Página 1 de 1

NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 15:28
por livip
Olá, eu tenho uma planilha de fluxo de caixa onde nela eu coloco as saídas e entradas, através de uma lista suspensa,.

A planilha no geral é simples, são quatro colunas: Descrição do item, tipo (entrada/saida), pagamento (banco, dinheiro, etc) e valor (positivo ou negativo).

Eu queria uma forma de definir esse positivo e negativo automaticamente sem precisar ficar colocando o "menos", pois as vezes esqueço e acaba registrando como entrada o que era pra ser uma saída. Mesmo com a formatação condicional que coloquei pra ficar verde e vermelho nas entradas e saídas respectivamente, acabo errando.

Pensei que talvez tivesse alguma forma, talvez através de uma estrutura condicional (if/then) de colocar o valor como negativo na coluna de valor, caso a coluna de tipo esteja como "saída".

Se der pra fazer isso só com a fórmula do SE, também aceito, o que for mais fácil. Tentei aqui mas não tive sucesso. Eu estou usando VBA à alguns dias apenas e portanto não tenho experiência suficiente pra desenvolver isso.

Re: NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 15:59
por JeanHard
Boa tarde
Eu uso assim, mas caso não for a linha do formato já ajuda muito



Sub total()

Dim x As Double
Dim y As Double
Dim Z As Double


x = Me.L_Despesa
y = Me.L_receita

Z = x - y


Me.L_Total = Format(Z, "R$ #,##0.00;-#,##0.00") 'essa linha faz o trabalho que você precisa



End Sub

Re: NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 16:03
por mucascosta
Veja se o anexo lhe ajuda...

Re: NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 16:21
por livip
JeanHard escreveu:Boa tarde
Eu uso assim, mas caso não for a linha do formato já ajuda muito



Sub total()

Dim x As Double
Dim y As Double
Dim Z As Double


x = Me.L_Despesa
y = Me.L_receita

Z = x - y


Me.L_Total = Format(Z, "R$ #,##0.00;-#,##0.00") 'essa linha faz o trabalho que você precisa



End Sub
Pelo o que entendi, esse código soma tudo e desconta as despesas, dando uma receita total, certo? Não é exatamente isso que preciso. Já tenho essa função de somar tudo, e descontar as despesas, inclusive separada por bancos e formas de pagamentos. Coloquei um print pra ver se entende melhor.

O que eu preciso é fazer com que, quando eu colocar lá como "SAÍDA" na segunda coluna, o número da quarta coluna (valor), fique negativo automaticamente. Preciso de uma função que transforme o valor em negativo de acordo com uma condição. Tipo um SOMASE, só que não vai somar, vai deixar negativo.

Imagem

Re: NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 16:22
por livip
mucascosta escreveu:Veja se o anexo lhe ajuda...

Eu já possuo a planilha, olhe a resposta que acabei de dar para o outro cara que me enviou o código de despesa total. Expliquei melhor e com um print.

NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 16:32
por JeanHard
Se vc usar assim L_Total = Format(Z, "-R$ #,##0.00;-#,##0.00") qualquer valor fica negativo ai é só adaptar pra vc ou post um modelo pra gente tentar ajudar

Re: NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 16:38
por livip
JeanHard escreveu:Se vc usar assim L_Total = Format(Z, "-R$ #,##0.00;-#,##0.00") qualquer valor fica negativo ai é só adaptar pra vc ou post um modelo pra gente tentar ajudar
Então, tentei esse código (talvez não faça sentido, mas meu conhecimento em lógica não é lá aprofundado, e em VBA, muito menos), mas não alterou para negativo.
Código: Selecionar todos
Sub Negativo()

Dim sTipo As String
Dim iValor As Integer

Set sTipo = ActiveWorksheet.Range("C73").Value
Set iValor = ActiveWorksheet.Range("E73").Value

If sTipo = "SAÍDA" Then Valor = Format(Z, "-R$ #,##0.00;-#,##0.00")

End Sub
Minha lógica foi, definir as células do tipo e a do valor (usei duas de exemplos, no caso a E73 pra valor e a C73 pra tipo), e então jogar uma condicional para se caso o TIPO esteja escrito "SAÍDA", o VALOR ia virar o format que você mandou para ficar em negativo, mas não foi.

NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 16:44
por JeanHard
Não ´format(z tem que ser
If sTipo = "SAÍDA" Then Valor = Format(ivalor, "-R$ #,##0.00;-#,##0.00")

vou ve se faço um modelo aqui pra vc rapidim

NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 17:02
por livip
Okay, fico no aguardo, to quebrando a cabeça aqui no excel pra tentar fazer funcionar nesse meio tempo kkkk

Re: NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 17:05
por mucascosta
Vc disse:
"O que eu preciso é fazer com que, quando eu colocar lá como "SAÍDA" na segunda coluna, o número da quarta coluna (valor), fique negativo automaticamente. Preciso de uma função que transforme o valor em negativo de acordo com uma condição".

No modelo que anexei, substituindo o código por:
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 2 Then Exit Sub
    If Target.Offset(, 0).Value = "saída" And Target.Offset(, 2).Value > 0 Then
        Target.Offset(, 2).Value = (Target.Offset(, 2).Value) * -1
    ElseIf Target.Offset(, 0).Value = "entrada" And Target.Offset(, 2).Value < 0 Then
        Target.Offset(, 2).Value = (Target.Offset(, 2).Value) * -1
    End If
End Sub
Faz exatamente o que vc quer...

Re: NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 17:07
por JeanHard
Meu amigo anexo o modelo se a condição for SAÍDA ele negativa na célula E73 se foi o que entendi é só adaptar pro seu código que é fácil ou se não conseguir chama aqui

NEGATIVO/POSITIVO AUTOMATICO - FLUXO DE CAIXA

Enviado: 09 Out 2020 às 17:09
por JeanHard
Use o formulário que fiz, esqueci de por o botão pra chamar rs