Preciso de ajuda com o código abaixo, não está registrando na planilha o total em dinheiro e diferença.
Private Sub btnCalcular_Click()
Dim totalDinheiro As Double
Dim totalCalculado As Double
Dim diferenca As Double
Dim msg As String
' Captura valores de entrada
Dim nroCaixa As String: nroCaixa = txtNroCaixa.Value
Dim nome As String: nome = txtOperador.Value
Dim abertura As Double: abertura = Val(txtAbertura.Value)
Dim sangria As Double: sangria = Val(txtSangria.Value)
Dim vendas As Double: vendas = Val(txtVendas.Value)
Dim vendasCartao As Double: vendasCartao = Val(txtVendasCartao.Value)
' Captura quantidades de cédulas e calcula total em dinheiro
totalDinheiro = (Val(txt200.Value) * 200) + _
(Val(txt100.Value) * 100) + _
(Val(txt50.Value) * 50) + _
(Val(txt20.Value) * 20) + _
(Val(txt10.Value) * 10) + _
(Val(txt5.Value) * 5) + _
(Val(txt2.Value) * 2) + _
(Val(txt1.Value) * 1) + _
(Val(txt050.Value) * 0.5) + _
(Val(txt025.Value) * 0.25)
' Calcula o total esperado no caixa
totalCalculado = abertura + vendas - sangria - vendasCartao
' Verifica a diferença
diferenca = totalDinheiro - totalCalculado
' Exibe os totais
lblTotalDinheiro.Caption = "Total em Dinheiro: R$ " & Format(totalDinheiro, "0.00")
lblTotalEsperado.Caption = "Total Esperado: R$ " & Format(totalCalculado, "0.00")
lblDiferenca.Caption = "Diferença: R$ " & Format(diferenca, "0.00")
' Validação do saldo
If diferenca = 0 Then
msg = "Fechamento correto! Nenhuma diferença encontrada!"
ElseIf diferenca > 0 Then
msg = "Há um excedente de R$ " & Format(diferenca, "0.00")
Else
msg = "Falta R$ " & Format(Abs(diferenca), "0.00") & " no caixa!"
End If
MsgBox msg, vbInformation, "Fechamento de Caixa"
End Sub
Private Sub btnFechar_Click()
Unload Me
End Sub
Private Sub btnGravar_Click()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Fechamento") ' Planilha onde os dados serão salvos
' Encontrar a próxima linha vazia
Dim ultimaLinha As Long
ultimaLinha = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row + 1
' Salvar os dados na planilha
ws.Cells(ultimaLinha, 1).Value = txtNroCaixa.Value
ws.Cells(ultimaLinha, 2).Value = txtOperador.Value
ws.Cells(ultimaLinha, 3).Value = Val(txtAbertura.Value)
ws.Cells(ultimaLinha, 4).Value = Val(txtSangria.Value)
ws.Cells(ultimaLinha, 5).Value = Val(txtVendas.Value)
ws.Cells(ultimaLinha, 6).Value = Val(txtVendasCartao.Value)
ws.Cells(ultimaLinha, 7).Value = Val(lblTotalDinheiro.Caption)
ws.Cells(ultimaLinha, 8).Value = Val(lblDiferenca.Caption)
MsgBox "Registro salvo com sucesso!", vbInformation, "Sucesso"
End Sub