- 11 Abr 2020 às 22:08
#53664
Descobri o seguinte código na net para localizar uma determinada data num determinado range:
As datas no range são calculadas e não introduzidas manualmente, se eu introduzir manualmente a data ela já descobre onde está a data.
O que pretendo é encontrar determinada data,neste caso 01/04/2020, pelo método Find.
Obrigado pela ajuda
Jorge Cabral
Código: Selecionar todos
Tendo em atenção que o formato nativo do meu excel é "dd/mm/yyyy", ou seja sistema europeu o que está errado no código para não detetar onde está a data a procurar?Sub FindAll()
Dim FirstFound As String, FirstAddress As String
Dim StartRng As Range, Rng As Range
Dim StartDate As Date
'
' DATA A PROCURAR
'
StartDate = DateSerial(Year(Date), Month(Date), 1)
Set StartRng = PLANEAMENTO.Range("P10:BW11").Find(What:=DateValue(StartDate), LookAt:=xlWhole, LookIn:=xlFormulas)
If Not StartRng Is Nothing Then
FirstFound = StartRng.Address
Else
GoTo NothingFound
End If
Set Rng = StartRng
Do Until StartRng Is Nothing
Set StartRng = PLANEAMENTO.Range("P10:BW11").FindNext(After:=StartRng)
Set Rng = Union(Rng, StartRng)
If StartRng.Address = FirstFound Then Exit Do
Loop
MsgBox Rng.Address ' Rng.Column
Exit Sub
NothingFound:
MsgBox "No values were found in this worksheet"
End Sub
As datas no range são calculadas e não introduzidas manualmente, se eu introduzir manualmente a data ela já descobre onde está a data.
O que pretendo é encontrar determinada data,neste caso 01/04/2020, pelo método Find.
Obrigado pela ajuda
Jorge Cabral
Você não está autorizado a ver ou baixar esse anexo.