Boa noite, fiz uma Sub para cadastrar os dados em meu projeto,l porem estou com dificuldade no seguinte:
eu coloquei uma condição que se ("DataEsp") o campo data for deixado em branco, vai cadastrar a data atual dd/mm/yyyy, e nas colunas B e J eu preciso que fique o "Mes" atual e Ano "atual,
só que ao cadastrar, se eu preencher uma data fica normal, porém se deixar em branco fica com o formato : dezembro 1899 ( nesse caso deixei em branco e cadatrou data de hj) só que nas colunas b e J ficou: dezembro - 1899
segue o código.
Alguem pode ajudar?
'PROCEDIMENTO PARA ADICIONAR DADOS AO BD
Public Sub Adicionar()
Dim linha As Integer
Dim conte As Integer
If shtPainel.Range("Receita") = "" And shtPainel.Range("CategoriaDespesa") = "" Then Exit Sub
linha = 4
conte = 1
Do Until shtDados.Cells(linha, "A") = ""
linha = linha + 1
conte = conte + 1
Loop
shtDados.Cells(linha, "A") = conte
'shtPainel.Range("DataEsp").Value = Format(Date, " dd/mm/yyyy")
If shtPainel.Range("DataEsp").Value = "" Then
shtDados.Cells(linha, "B") = Format(Date, "dd/mm/yyyy")
shtDados.Cells(linha, "I") = Format(Date, "mm")
shtDados.Cells(linha, "J") = Format(Date, "yyyy")
Else
shtDados.Cells(linha, "B") = shtPainel.Range("DataEsp").Value
End If
If Range("OpAdd") = 1 Then
shtDados.Cells(linha, "D") = shtPainel.Range("Receita").Value
shtDados.Cells(linha, "E") = "Receita"
Else 'OU SEJA SE ("OpAdd")=2
shtDados.Cells(linha, "C") = shtPainel.Range("CategoriaDespesa").Value
shtDados.Cells(linha, "D") = shtPainel.Range("Despesa").Value
shtDados.Cells(linha, "E") = "Despesa"
End If
shtDados.Cells(linha, "F") = shtPainel.Range("EspecificoOp").Value
shtDados.Cells(linha, "G") = shtPainel.Range("Filial").Value
shtDados.Cells(linha, "H") = shtPainel.Range("Valor").Value
shtDados.Cells(linha, "I") = MonthName(Month(shtPainel.Range("DataEsp")))
shtDados.Cells(linha, "J") = Year(shtPainel.Range("DataEsp"))
shtDados.Cells(linha, "K") = Format(Date, "dd/mm/yyyy")
shtDados.Cells(linha, "L") = "Saldo"
If Range("OpAdd") = 1 Then
MsgBox "Receita adicionada com sucesso", vbOKOnly, "Receita"
Else
MsgBox "Despesa adicionada com sucesso", vbOKOnly, "Despesa"
End If
Application.ThisWorkbook.Save
Call LimparForm
End Sub
Postado : 25/05/2017 7:00 pm