Notifications
Clear all

VBA - Match com Datas

7 Posts
2 Usuários
0 Reactions
1,577 Visualizações
(@fabarantes)
Posts: 0
New Member
Topic starter
 

Bom dia pessoal,

tinha postado a um tempo atrás uma dúvida sobre a formula Match pois apresentava ERROR 2042 (type mismatch)
Foi me indicado a utilização do CLng na variável que funcionou daquela vez mas não mais funciona, apresentando o mesmo erro de antes. Alguem poderia ajudar?

Dim month As Date, column As Variant

month = Format(TextBox1.Value, "dd/mm/yyyy")
column = WorksheetFunction.Application.Match(CLng(month), Sheets("Meses").Range("A1:A12"), 0)

MsgBox column

Valeu!

 
Postado : 12/06/2014 7:08 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

fabarantes, em principio a rotina não contem erro, em seu post anterior a pesquisa era efetuada na coluna A1:F1 e neste em linhas A1:A12, esta é a unica alteração daquela para esta.
Este erro geralmente acontece ou, a Data pesquisada não existir ou estarem com formatação diferente, como texto, o que ocasionaria o erro devido ao Tipo.
Verifique a formatação das datas em seu modelo, verifique tambem se o nome da Aba está correto, as vezes colocam espaço sem perceberem.

[]s

 
Postado : 12/06/2014 8:19 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

A priori, o erro pode "estar sendo gerado" por utilizar uma variável com o nome de uma função interna do VBA - MONTH
Descrição parcial da mesma:

Função Month
Retorna uma Variant (Integer) que especifica um número inteiro entre 1 e 12, inclusive, que representa o mês do ano.
Sintaxe
Month(date)
O argumento date requerido é uma Variant, expressão numérica, expressão de sequência ou qualquer combinação que possa representar uma data. Se date contiver Null, Null será retornado......

Experimente renomear essa variável.

 
Postado : 12/06/2014 8:34 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Eu tambem havia pensado nisto Reinaldo, mas acabei não comentando devido a ter montado um exemplo para teste e não ter obtido erro devido a esta variavel.

 
Postado : 12/06/2014 8:45 am
(@fabarantes)
Posts: 0
New Member
Topic starter
 

Pois é pessoal. Eu estava pensando na questão da formatação da própria célula..Ha algum problema se nesse intervalo procurado ( A1:L1 ) tiverem outras formatações distintas da textbox que eu procuro?

Exemplo (Coluna A e B são textos e C e D são datas)
Titulo1 Titulo2 01/01/14 01/02/14

 
Postado : 13/06/2014 6:35 am
(@fabarantes)
Posts: 0
New Member
Topic starter
 

Obs: Ja ate tentei mudei o nome da variavel para ABC por exemplo mas o erro se manteve!

 
Postado : 13/06/2014 6:36 am
(@fabarantes)
Posts: 0
New Member
Topic starter
 

Eu tambem havia pensado nisto Reinaldo, mas acabei não comentando devido a ter montado um exemplo para teste e não ter obtido erro devido a esta variavel.

Mauro,

Denomiei a variavel SDate como String ao invés de Date e funcionou!

 
Postado : 13/06/2014 12:13 pm