Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Nao sei como formatar TEXTBOX como DATA *RESOLVIDO*

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
RUSSO_RP
Colaborador
Colaborador
Mensagens: 11
Registrado em: Ter Nov 05, 2019 6:31 am

Nao sei como formatar TEXTBOX como DATA *RESOLVIDO*

Mensagem por RUSSO_RP »

EXEMPLO FORUM.rar
AJUDA PARA TEXTBOX
(56.32 KiB) Baixado 205 vezes
<t>Boa noite!<br/>
<br/>
Estou fazendo um pequeno formulario para ser utilizado na empresa onde trabalho e estou com algumas duvidas.<br/>
<br/>
A que mais est[a me atrapalhando no momento, e que tenho um textbox onde digito uma data, porem quando vou para a tabela ela esta aparecendo no formato americano e como texto, pois ai ela fica fora do filtro de data e depois da erro na minha tabela dinamica.<br/>
<br/>
Mais uma duvida, tenho um campo chamado Tipo de Retrabalho, onde quem for digitar deve escolher entre Cliente e EDC, mas quando nao precisar clicar em nenhum desses dois gostaria que na tabela aparecesse SR. e possivel?<br/>
<br/>
Vou anexar o arquivo e espero a ajuda de vcs.<br/>
<br/>
Muito Obrigado!</t>
Editado pela última vez por RUSSO_RP em Sáb Nov 09, 2019 3:36 am, em um total de 1 vez.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Nao sei como formatar TEXTBOX como DATA

Mensagem por webmaster »

RUSSO_SP,

Dá uma pesquisada no forum que isso já foi extensamente discutido por aqui.

Att


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: Nao sei como formatar TEXTBOX como DATA

Mensagem por Reinaldo »

Como disse o colega WebMaster Tomas, esse e um assunto recorrente nos diversos foruns, com uma extensa gama de demandas/soluções;
Contudo seu projeto utiliza um modelo de inserção de dados interessante, e assim segue minha sugestão para os tres campos de data TextBox2/5/6:
EXEMPLO(Datas)FORUM.zip
(51.98 KiB) Baixado 278 vezes
Experimente e veja se atende


RUSSO_RP
Colaborador
Colaborador
Mensagens: 11
Registrado em: Ter Nov 05, 2019 6:31 am

Re: Nao sei como formatar TEXTBOX como DATA *RESOLVIDO*

Mensagem por RUSSO_RP »

Bom dia!

Reinaldo muito obrigado pela ajuda!!!! Deu certo!!!!!

Vlw demais pela ajuda!


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: Nao sei como formatar TEXTBOX como DATA *RESOLVIDO*

Mensagem por Reinaldo »

Russo,
conforme sua MP na planilha continua invertendo mês/dia ao salvar quando mês e dia são inferiores a 12.
Assunto corriqueiro, pela maneira que o VBA manipula datas internamente
;preferência pelo formato americano mmddyyyy. Como um Textbox, por default fornece seu dado/conteudo como texto, ao salvar o editor vbe "tenta" compatibilizar esse conteudo com formatos conhecidos; assim deve-se informar ao editor qual o formato esperado.
A proposta que lhe sugeri, está na rotina que insere os dados na planilha; além da alteração na configuração dos textbox datas, via classe, para diminuir um pouco as linhas de codigo:

Código: Selecionar todos

Private Sub lsInserir(ByRef lTextBox As Variant, ByVal chamados As String, ByVal A As Long, ByVal lUltimaLinha As Long)
    If (TypeOf lTextBox Is MSForms.TextBox) Or (TypeOf lTextBox Is MSForms.ComboBox) Then
            
            If lTextBox.Tag = "B" Or lTextBox.Tag = "E" Or lTextBox.Tag = "G" Then
                Sheets(chamados).Range(lTextBox.Tag & lUltimaLinha).Value = CDate(Format(lTextBox.Text, "dd/mm/yyyy"))
            Else
                Sheets(chamados).Range(lTextBox.Tag & lUltimaLinha).Value = lTextBox.Text
            End If
    Else
        If TypeOf lTextBox Is MSForms.OptionButton Then
            If lTextBox.Value = True Then
                Sheets(chamados).Range(lTextBox.Tag & lUltimaLinha).Value = lTextBox.Caption
            End If
        End If
    End If
End Sub
A alteração está na linha onde consta ..cdate(....); o que em seu modelo/exemplo supriu/corrigiu a demanda
Como informou que ainda háinversão de datas Verifique:
Se aplicou a alteração corretamente;
Se os campos datas em seu projeto oficial estão com as Tag's "B" / "E" / "G";
Configuração da coluna(s) data(s) na planilha;
Configuração de datas no painel do windows;
Caso nãoconsiga evoluir disponibilize seu modelo oficial para uma analize mais condizente


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder