Notifications
Clear all

Dificuldades com Datas

7 Posts
4 Usuários
0 Reactions
1,686 Visualizações
(@ueleodoro)
Posts: 133
Estimable Member
Topic starter
 

Boa Tarde meus amigos,

estou com uma dificuldades com um código aqui. Estou não compreendendo o motivo do erro pois utilizo este esquema em diversas outra planilhas mas nesta não da certo.

É um botão Incluir. As datas não estão entrando como Datas na planilha. Dificultando filtragens e cálculos futuros. Segue o código.

As "Dim dDtEnt, dDtPrevista, dDtEntrega As Date" não estão entrando na planilha como DATA entra como qualquer outra coisa menos como data.

Alguém pode eme dar uma luz?

Private Sub CmdIncluir_Click()


Dim lId, lOS, lCodCliente As Long
Dim dDtEnt, dDtPrevista, dDtEntrega As Date
Dim cValorServico As Currency

If Me.txtID = "" Or Me.txtOS = "" Or Me.txtCodCliente = "" Then

MsgBox "Necessário preencher os campos ID, O.S., CODIGO DO CLIENTE e NOME"

Exit Sub
End If

If Me.txtDtEntrada = "" Or Me.txtDtPrevista = "" Then

MsgBox "Necessário preencher os campos DATA DE ENTRADA e DATA PREVISTA"

Exit Sub
End If

If Me.cbFormaPagamento = "" Then

MsgBox "Necessário preencher o campo FORMA DE PAGAMENTO"

Me.cbFormaPagamento.SetFocus

Exit Sub
End If

If Me.txtDtEntrega = "" Then
Me.txtDtEntrega = 0
End If

If Me.txtValorServico = "" Then
Me.txtValorServico = 0
End If

lId = Me.txtID
lOS = Me.txtOS
lCodCliente = Me.txtCodCliente
dDtEnt = Me.txtDtEntrada
dDtEntrega = Me.txtDtEntrega
cValorServico = Me.txtValorServico

'não permite incluir caso o ultimo lançamento for maior que o código a ser lançado
Dim lCodigo As Long
Dim lCodigo2 As Long

If Me.txtID = "" Then
    Me.txtID = 0
    End If

lCodigo = Sheets("ORDEM_SERVIÇO").Range("A600000").End(xlUp).Offset(0, 0).Value
lCodigo2 = Me.txtID

If lCodigo2 <= lCodigo Then
    MsgBox "ID Já existe. Impossivel Incluir"
    Exit Sub
    End If
    
'Pago ou não

If Me.ckbPAGO = True Then

    tPago = "SIM"
Else:
    tPago = "NÃO"
End If

i = 4

Do Until Sheets("ORDEM_SERVIÇO").Cells(i, 1) = ""

i = i + 1

Loop

Sheets("ORDEM_SERVIÇO").Cells(i, 1) = lId
Sheets("ORDEM_SERVIÇO").Cells(i, 2) = lOS
Sheets("ORDEM_SERVIÇO").Cells(i, 3) = lCodCliente
Sheets("ORDEM_SERVIÇO").Cells(i, 4) = UCase(txtNomeCliente)
Sheets("ORDEM_SERVIÇO").Cells(i, 5) = dDtEnt
Sheets("ORDEM_SERVIÇO").Cells(i, 6) = txtDtPrevista
Sheets("ORDEM_SERVIÇO").Cells(i, 9) = dDtEntrega
Sheets("ORDEM_SERVIÇO").Cells(i, 7) = UCase(cbFormaPagamento)
Sheets("ORDEM_SERVIÇO").Cells(i, 8) = cValorServico
Sheets("ORDEM_SERVIÇO").Cells(i, 10) = UCase(cbStatus)
Sheets("ORDEM_SERVIÇO").Cells(i, 11) = tPago
Sheets("ORDEM_SERVIÇO").Cells(i, 12) = UCase(txtDescricaoObs)

MsgBox "Incluido com SUCESSO", , ""

Application.DisplayAlerts = False 'Disabilita o prompt
    ActiveWorkbook.Save 'Salva as alterações
    Application.DisplayAlerts = True 'Habilita o prompt
     
End Sub
 
Postado : 27/09/2015 12:34 pm
(@mprudencio)
Posts: 0
New Member
 

Sugiro que poste um arquivo modelo..assim fica mais facil entender o que prentede.

 
Postado : 27/09/2015 12:40 pm
(@ueleodoro)
Posts: 133
Estimable Member
Topic starter
 

segue anexo da planilha...

acesse o único form do sistema...quero que as datas entrem na planilha como data e não como um formato diferente... nao sei o que há...

 
Postado : 27/09/2015 12:58 pm
(@alvaro)
Posts: 0
New Member
 

ueleodoro, não consegui ver o erro.
Em qual aba da planilha o form inputa os valores??
em qual coluna esta a data que esta com o formato diferente.??

Abração meu amigo.

 
Postado : 27/09/2015 1:34 pm
(@ueleodoro)
Posts: 133
Estimable Member
Topic starter
 

Alvaro o Form_OS inputa na Plan Ordem_Serviço...o erro não aparece visualmente...mas tente selecionar uma célula de data e alterar o formato dela para números, não acontece nada. Assim não consigo transformar as datas em números para calculos, não consigo fazer uma condicional básica de comparação de datas, acho que esta entrando como texto, mas não sei pq nao entendi o motivo...

 
Postado : 27/09/2015 1:54 pm
(@messiasmbm)
Posts: 0
New Member
 

ou o erro está em sua declaração ou na formatação da planilha

Dim dDtEnt As Date, dDtPrevista As Date, dDtEntrega As Date ' é assim o certo
 
Postado : 27/09/2015 4:17 pm
(@ueleodoro)
Posts: 133
Estimable Member
Topic starter
 

muito obrigado...algo tão simples...valeu :)

 
Postado : 27/09/2015 4:33 pm