VBA – Comparar dados
Verificar se a Data Está Entre Datas
A função VBA a seguir verificará se uma determinada data está entre duas outras datas e, em caso afirmativo, retornará o valor TRUE (Verdadeiro). Se a data não estiver entre as datas, ela retornará o valor FALSE (Falso).
Function Compare_Datas(Data_Inicio As Date, Data_Fim As Date, Outra_Data As Date) As Boolean
' Função booleana para comparar datas
'Retornará TRUE somente quando Outra_Data estiver entre Data_Inicio e Data_Fim
'Caso contrário, retornará FALSE
'Definir o resultado como FALSE - valor padrão
Compare_Datas = False
'Comparar datas
If ((Outra_Data >= Data_Inicio) And (Outra_Data <= Data_Fim)) Then
'Se a outra data estiver entre as datas inicial e final, defina como verdadeiro
Compare_Datas = True
End If
End Function
A função tem três argumentos:
– Data_Inicio – a primeira data permitida
– Data_Fim – a última data permitida
– Outra_Data – a data que está sendo comparada
A função deve estar em um módulo do Excel. Ela pode ser executada em uma pasta de trabalho do Excel, por exemplo:
A4= Compare_Datas(21-06-2003;12-02-2008;15-09-2008)
A3 =Compare_Datas(A1;A2;A3)
A1= Compare_Datas(13-03-2005;18-08-2005;A6)
Portanto, Compare_Datas(25-04-2007;12-07-2008; 23-06-2007) fornecerá o valor TRUE, pois 23-06-2007 está entre 25-04-2007 e 12-07-2008
Da mesma forma, Compare_Datas(19-07-2003;12-12-2001;12-08-2008) retornará FALSE, pois 12-12-2001 NÃO está entre 19-07-2003 e 12-08-2008
Faça o download da função .XLSM aqui
Codificação VBA facilitada
Pare de procurar códigos VBA on-line. Saiba mais sobre o AutoMacro – um construtor de código VBA que permite que os iniciantes codifiquem procedimentos do zero com o mínimo de conhecimento de codificação e com muitos recursos que economizam tempo para todos os usuários!