Cautare si copiere date dintr o pagina in alta in funtie de o conditie
Cautare si copiere date dintr o pagina in alta in funtie de o conditie
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!
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.
Re: Cautare si copiere date dintr o pagina in alta in funtie de o conditie
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
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
Re: Cautare si copiere date dintr o pagina in alta in funtie de o conditie
Buna ziua
Ati incercat sa inlocuiti linia de cod
cu
?
IP
Ati incercat sa inlocuiti linia de cod
Cod: Selectaţi tot
Sheets("PRODUCTIE").Cells(contor, 2) >= Range("F1")
Cod: Selectaţi tot
If Sheets("PRODUCTIE").Cells(contor, 2) >= Range("F1") And Sheets("PRODUCTIE").Cells(contor, 2) <= Range("G1") Then
IP
Re: Cautare si copiere date dintr o pagina in alta in funtie de o conditie
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!
![Smile :)](./images/smilies/icon_e_smile.gif)