Formatação da datas...
 
Notifications
Clear all

Formatação da datas 2

5 Posts
2 Usuários
0 Reactions
900 Visualizações
(@ferrara)
Posts: 0
New Member
Topic starter
 

Bom dia! Postei uma mensagem sobre formatação de data que foi gentilmente respondida com a sugestão de utilizar o código:
format(x,dd/mm/yyy).
Eu utilizei este código e ele realmente resolveu em dos problemas que eu estava enfrentando a saber, o excel trocava o mês com o ano.
Agora apareceu outra questão com a formatação de data: No meu código a data é inserida num banco de dados por meio de uma combobox. Para isso utilizo o código:

ActiveCell.Offset(0, 1).Value = Format(Data_Compra.Text, "dd/mm/yyyy")

no qual Data_Compra é o nome da combo box. O problema é que quando a informação vai para o banco de dados ele não é reconhecido como data. Tenho que dar um "f2" e "enter" na celula para o excel reconhecer como data. Isso para mim é um problema pois não consigo usar a função filtro no campo "data".

Tentei especificar a variável por meio do comando "dim data_compra as date", mas ai tenho bug em outras partes do código, por exemplo o código "Data_Compra.SetFocus" não funciona.

Alguém pode me iluminar? A pergunta é besta, mas como não tenho muita experiência com programação me deparo com este tipo de situação e não consigo resolver. Desde já obrigado! abraços!

 
Postado : 27/10/2016 7:43 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

O problema é que quando a informação vai para o banco de dados ele não é reconhecido como data.

O que é "banco de dados" no seu contexto, uma guia do excel, o Access, Oracle, MySql etc?
Caso seu "banco" seja uma guia....
Grave uma Macro a parte, selecione a coluna onde tem a data, e formate essa coluna para data abreviada.
http://www.globaliconnect.com/excel/ind ... Itemid=475
Att

 
Postado : 27/10/2016 7:51 am
(@ferrara)
Posts: 0
New Member
Topic starter
 

O banco de dados está em excel... fiz a macro, mas mesmo assim não resolveu. Vou tenatar mais um pouco.
Valeu pela ajuda.

 
Postado : 27/10/2016 5:47 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

No banco de dados do fórum ha inúmeros tópicos sobre essa ocorrência.
Experimente utilizar a função de conversão cDate.
ActiveCell.Offset(0, 1).Value = cdate(Format(Data_Compra.Text, "dd/mm/yyyy")) ou ActiveCell.Offset(0, 1).Value = cdate(Data_Compra.Text)

 
Postado : 27/10/2016 6:22 pm
(@ferrara)
Posts: 0
New Member
Topic starter
 

Sim... tentei varias das opções que econtrei. O que funcionou para mim foi:
ActiveCell.Offset(0, 1).Value = DateValue(Format(Data_Compra.Text, "mm/dd/yyyy"))
O detalhe é que tive que inverter para mm/dd/yyyy para que na planilha o dado seja gravado como dd/mm/yyyy. Mas funcionou...
Valeu! abs!

 
Postado : 29/10/2016 11:12 am