Cautare si copiere date dintr o pagina in alta in funtie de o conditie

utudan
Mesaje: 67
Membru din: Vin Noi 08, 2013 6:55 pm

Cautare si copiere date dintr o pagina in alta in funtie de o conditie

Mesaj de utudan » Sâm Dec 07, 2019 5:53 am

Buna ziua
Daca se poate m ar interesa un cod vba care, atasat la un buton, sa caute datele dintr un tabel si sa le copieze pe o alta pagina cu conditia sa respecte intervalul de data scris in doua celule. Atasez si un fisier pentru lucru. Daca in acel cod vba ar fi si explicata fiecare linie ar fi minunat.
Va multumesc anticipat!
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

utudan
Mesaje: 67
Membru din: Vin Noi 08, 2013 6:55 pm

Re: Cautare si copiere date dintr o pagina in alta in funtie de o conditie

Mesaj de utudan » Vin Ian 03, 2020 5:06 am

Am gasit pe site un cod pe care l am adaptat cerintelor mele dar la "conditia de verificat" as vrea sa caute ce scrie in" >="f1 si "<="g1". Momentan imi aduce datele >= cu ce scrie in f1 eu trebuie sa fac o sortare dupa data si apoi sa sterg datele care nu ma intereseaza. Daca aveti timp sa va uitati peste codul de mai jos si sa il inbunatatiti.
Multumesc

Sub Button1_Click()
Dim ultimul_rand As Long
Dim rand As Long
'sterge vechile inregistrari din tabel
Sheets("PRODUCTIE SAGA").Activate
Range("B4:E1000").Select
Selection.ClearContents
Sheets("PRODUCTIE").Select
'stabileste ultimul rand cu inregistrari (coloana A completata)
With ActiveSheet
ultimul_rand = .Cells(.Rows.Count, "B").End(xlUp).Row
End With
'numarul randului din foaia PRODUCTIE SAGA din care incepe copierea inregistrarilor
rand = 4
For contor = 2 To ultimul_rand 'domeniul pentru care se verifica conditia
If Sheets("PRODUCTIE").Cells(contor, 2) >= Range("F1") Then 'randul si conditia care se verifica

Sheets("PRODUCTIE SAGA").Cells(rand, 2) = Sheets("PRODUCTIE").Cells(contor, 2) 'copiaza valoarea
Sheets("PRODUCTIE SAGA").Cells(rand, 3) = Sheets("PRODUCTIE").Cells(contor, 3)
Sheets("PRODUCTIE SAGA").Cells(rand, 4) = Sheets("PRODUCTIE").Cells(contor, 5)
rand = rand + 1 'trece la randul urmator

End If
Next
Sheets("PRODUCTIE SAGA").Activate

End Sub

IPP
Moderator
Moderator
Mesaje: 4197
Membru din: Mie Iul 29, 2009 7:26 am
Localitate: Cluj-Napoca

Re: Cautare si copiere date dintr o pagina in alta in funtie de o conditie

Mesaj de IPP » Lun Ian 06, 2020 4:25 pm

Buna ziua

Ati incercat sa inlocuiti linia de cod

Cod: Selectaţi tot

Sheets("PRODUCTIE").Cells(contor, 2) >= Range("F1")
cu

Cod: Selectaţi tot

If Sheets("PRODUCTIE").Cells(contor, 2) >= Range("F1") And Sheets("PRODUCTIE").Cells(contor, 2) <= Range("G1") Then
?
IP

utudan
Mesaje: 67
Membru din: Vin Noi 08, 2013 6:55 pm

Re: Cautare si copiere date dintr o pagina in alta in funtie de o conditie

Mesaj de utudan » Mie Ian 08, 2020 4:17 pm

Nu am ancercat ca daca ma ducea capul atata vedeam ca merge si imi rezolvam problema. :) L am incercat acum si merge perfect. Multumesc mult pt rezolvare. O sa il folosesc si in alte aplicatii ca codul asta l am inteles cat de cat. Multumesc!

Scrie răspuns

Înapoi la “Visual Basic for Application (VBA) cu Excel - Intrebari tehnice”