dsac23 Posted August 27, 2012 at 10:08 PM Report Share #473716 Posted August 27, 2012 at 10:08 PM Boa noite pessoal. Estou a criar um ficheiro em excel com VBA para registo de horas extra. Agora estou com um problema, as horas extra são introduzidas através de uma combobox, que contém os seguintes valores: 08:00 12:00 16:00 20:00 24:00 O problema está quando eu selecciono as 24:00 que na combobox estão como 24:00 mas após seleccionar, aparece na combobox 00:00. No excel, a formatação [H]:MM retorna as 24:00. O que eu gostaria de saber, é se há alguma possibilidade de utilizar alguma formatação semelhante no VBA. A formatação da combobox é dada por: Private Sub ComboBox1_Change() ComboBox1.Value = Format(ComboBox1.Text, "HH:MM") End Sub Outra questão tem a ver com a data, é possivel numa textbox trancá-la de modo a ser apenas possivel introduzir uma data, por exemplo, no formato DD/MM/AAAA? Eu tentei, mas sem sucesso com o seguinte: Private Sub TextBox1_Change() TextBox1.Value = Format(TextBox1.Text, "DD/MM/AA") End Sub Pois aparece, por exemplo, 24/08/AA Desde já agradeço a vossa atenção. Cumps. Link to comment Share on other sites More sharing options...
FreiNando Posted August 28, 2012 at 08:08 PM Report Share #473887 Posted August 28, 2012 at 08:08 PM O formato [h]:mm não tem equivalente no format do VBA. Este formato é usado para quantidade de tempo(como o cronómetro) e não para indicação do tempo instantâneo (tal qual o relogio). Na realidade se useres esse formato para a data de hoje (28/08/2012 21:00) irá aparecer 987597:00 ou seja a quantidade de horas decorridas desde as 0:00 do dia 31-12-1899. Para o teu exemplo penso que apenas texto servirá. Se estás a carregar dados da folha de Excel podes ler a propriedade Text em lugar de Value. No VBA os formatos são em inglês "DD/MM/YY". Para os formatos de tempo o M indica os meses, ou os minutos consoante a letra anterior seja D ou H. Se quiseres indicar apenas os minutos usa N ou Nn. O caminho mais curto para conseguir fazer muitas coisas é fazer uma de cada vez. Samuel Smiles Link to comment Share on other sites More sharing options...
dsac23 Posted August 28, 2012 at 09:58 PM Author Report Share #473912 Posted August 28, 2012 at 09:58 PM (edited) Obrigado pelo esclarecimento em relação à data! Nem me lembrei disso! 😄 Por isso é que quando eu colocava DD/MM/AAAA aparecia 28/08/AA! Muito obrigado! 🙂 Em relação à hora ... não hà volta a dar? 😞 Edited August 30, 2012 at 11:52 PM by dsac23 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now