prinztegame
00martedì 16 luglio 2019 11:46
Buongiorno a tutti, vorrei un piccolo aiuto con un codice vba per cercare tra due date specifiche.
Nel Foglio1 ho una serie di nomi in colonna A, una serie di date in colonna B e nelle celle E1 ed E2 introduco la data di inizio e la data di fine della mia ricerca . Il codice dovrebbe copiare i dati che rientrano all'interno delle date inserite e copiarli nel Foglio2, ma ciò non avviene né tantomeno ottengo un errore o altro.
Di seguito il codice:
Sub ESTRAI()
Dim lastrow As Long, erow As Long, i As Long
Dim mydate As Date, StartDate As Date, EndDate As Date
lastrow = Foglio1.Cells(Rows.Count, 1).End(xlUp).Row
Foglio1.Range("A1").Select
For i = 2 To lastrow
StartDate = Foglio1.Range("E1").Value
EndDate = Foglio1.Range("E2").Value
mydate = Cells(i, 2)
If mydate >= StartDate And mydate <= EndDate Then
erow = Foglio2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
Range(Cells(i, 1), Cells(i, 2)).Copy Destination:=Foglio2.Cells(erow, 1)
End If
Next i
End Sub
Ringrazio anticipatamente chi potrà darmi una mano.
Prinz
dodo47
00martedì 16 luglio 2019 12:15
non succede nulla perchè nel foglio1 col B non c'è nessuna data compresa tra il 1 e 2 gennaio 18😉
Ti suggerisco, inoltre di mettere le seguenti istruzioni:
StartDate = Foglio1.Range("E1").Value
EndDate = Foglio1.Range("E2").Value
prima del ciclo for, altrimenti tutte le volte le legge inutilmente, basta 1 sola volta
saluti
prinztegame
00martedì 16 luglio 2019 12:46
Ciao Domenico, grazie per avermi fatto notare la data errata (in effetti doveva essere 01/02/2018) e grazie anche per il suggerimento riguardo le istruzioni prima del ciclo For.
Ma nonostante tutto il codice continua a non funzionare...qualche altro suggerimento?
Massimo
dodo47
00martedì 16 luglio 2019 12:55
la risposta è sempre la stessa, in col B del foglio1 non c'è nessuna data compresa tra 1/2/18 e 2/2/18......, cioè le date poste in E1 e E2
edit: accorciamo, che ci scrivi in E1 e E2 ?
prinztegame
00martedì 16 luglio 2019 13:09
Ciao Domenico, premetto che ho risolto il problema che era il command button associato alla macro e ti ringrazio per il tempo dedicatomi.
In ogni caso in E1 avevo scritto 01/01/2018 mentre in E2 01/02/2018.
Un saluto a tutti,
Massimo
dodo47
00martedì 16 luglio 2019 13:13
Si, ho visto solo ora.
ciao