Private Sub txtRecebimento_Change()
If txtRecebimento <> "" Then
txtDataDevolucao.Value = Date
Else
Me.txtDataDevolucao = ""
End If
End Sub
O que está acontecendo é que sempre está puxando a data atual. E não a que está gravada lá no banco de dados. Alguém teria alguma idéia do que proceder? Está funcionando beleza a questão de quando mudar o estado do ComboBox, puxar a data do sistema, mas a questão é que depois que vou pesquisar uma outra, sempre mostra a data atual (do sistema).
Mac, o retorno está correto, uma vez que voce está usando a Função Date, se der uma olhada na ajuda do VBA sobre a mesma, teremos :
Função Date Retorna uma Variant (Date) que contém a data atual do sistema.
Se quer que o retorno seja a Data que se encontra em uma planilha, tem de alterar a rotina indicando qual a planliha e endereço, tipo :
txtDataDevolucao.Value = Range("A2").value
Acredito não ser dificil a implementação depois de todas as adaptações que já realizou no Modelo Cadastro em que este tipo de instrução é usado frequentemente.
Boa tarde. Bom Mauro, sobre o código, está funcionando bem, quando mudo o status do ComboBox, está puxando a data do sistema beleza. Porém nos dados já armazenados, ou seja, gravados anteriormente, ele pega é a data do sistema e não a data que foi cadastrada anteriormente onde, gostaria de apenas quando fosse cadastrar que ele puxasse a data do sistema. Essa é a dúvida!!!
A rotina que postou é referente a um TextBox aonde foi atribuido uma instrução no evento Change do mesmo, que é preencher com a data do sistema conforme a condição IF, não temos nenhuma referencia ao que está passando.
Grande Mauro deixa eu explicar como funciona este cadastro. Por exemplo, já existe o número da "medicao" pre-definido, então vou lá no formulário pesquisa e pesquiso o número e preencho os campos. Estes campos são aqueles do modelo cadastro, só que para a aplicação as necessidades aqui. Então por exemplo, chamei a "medicao" de nº2280.
Aí clico no botão alterar e preencho os campos como se fosse os campos do cadastro do Tomas. Então tem um campo que é a data do dia que entreguei a "medicao" para a equipe. Então quando seleciono o nome da equipe, já lança para aquele textbox a data do dia. Beleza até aí. Só que o que ocorre é o seguinte, se eu chamar a "medicao" 2280 novamente, vamos supor, amanha, ou outro dia posterior, ele vai mostrar a data do dia naquele campo e nao a data do cadastro efetuado naquele dia. A dúvida é essa, tem como consertar essa questão para que ele continue a fazendo isso, ao mudar o status do comboBox ele enviar para aquele textbox só se eu consultar outro dia qualquer, que mantenha aquela data do cadastro e não a data atual (no caso do sistema). Não tinha sido claro meu nobre Mauro. Será é possível resolver essa questão meu nobre??
mac, pelo que estou entendendo, quando utiliza a opção alterar, a Data é o do sistema, OK, como você disse, isto é correto, então precisamos veriificar se apos confirmar, a mesma é lançada corretamente aonde deveria, se SIM, e o problema está somente quando carregamos estes dados novamente, acredito ser pelo motivo abaixo :
Se for isto e quando se refere a DATA, estiver falando do txtRecebimento, e no carregamento dos dados estiver utilizando este mesmo Textbox, ele sempre terá a Data do Sistema uma vez que está utilizando o Evento CHANGE, ou sejá, as instruções no mesmo ocorrerão independente se foram digitados manualmente ou se foram introduzidas pela rotina que carrega os dados, o mesmo só ficará em branco se no mesmo não for digitado nada.
Ainda não entendi a parte do comboBox, mas uma dica, seria ter dois TextBox, um para Lançar a nova data e outro para carregar as Datas lançadas na planilha.
Grande Mauro, é isso que você disse mesmo. Até que o lançamento está ocorrendo no local correto, o que não está correto é quandoo chamo a "medicao" (numero) vem a data do sistema. A questão do ComboBox é o seguinte, como tenho várias equipes cadastradas, quando seleciono uma, já é enviado o valor da data para o textbox recebimento, para não ficar digitando a data. Só que não pensei que quando chamasse a medição depois, ele ficaria mostrando a data atual. Não tem como resolver isso com um textbox apenas Mauro, porque essa questão dos dois textboxs não entendi.
Como vão vocês??? Bom, meus nobre ainda estou tendo problemas. Mudei o tipo de evento de change para click e ainda está mostrando a data atual. Para o cadastro, funciona que é uma beleza, quando mudo o status do ComboBox envia para o TextBox a data do sistema, beleza. Portanto, se consultar um cadastro já existente, ele mostrará naquele TextBox a data atual, ou seja, a data do sistema. Eita coisa rs...!! Mas muito obrigado pelas ajudas meu nobres! Vamos tentando!!!
Mac, mantendo a rotina que postou referente ao textbox, a mesma ocorrerá independente do Evento.
Percebo que sua rotina de carregamento dos dados está associada ao evento do Combobox, então a melhor maneira é como eu sugeri e é bem simples uma vez que já está lidando com adaptações neste modelo ha um bom tempo e já deve estar familiarizado com as rotinas que carregam os dados,é só criar um novo textbox para retorno da Data que está na planilha no carregamento e, manter o da Alteração da Data que só terá efeito quando utilizar a opção alterar.