AJUDA COM FUNCAO SOMA

PELLENSE 17/10/2009 13:43:52
#325576
Ola pessoal
Tenho uma nova duvida com vba, eu tenho 5 textbox, textbox1=[Ô]R$valor[Ô], textbox2=[Ô]R$valor[Ô],textbox3=[Ô]R$valor[Ô],textbox4=[Ô]R$valor[Ô], essas 4 textbox com o valor, com 2 casas decimais,textbox5=[Ô]R$soma das 4 textbox[Ô], sendo q as 4 primeiras textbox sao preenchidas com a função vlookup,eu gostaria q a textbox 5 fosse automaticamente somando os resultados conforme as outras textbox fossem preenchidas.
ja tentei a função: sum() e ja tentei somar individualmente,mais a unica coisa q eu consegui foi concatenar os valores e nao soma, gostaria de saber se alguem pode me ajudar. Atenciosamente
TECLA 17/10/2009 14:05:26
#325577
Text5 = CDbl(Text1) + CDbl(Text2) + CDbl(Text3) + CDbl(Text4)
PELLENSE 17/10/2009 15:24:14
#325580
Citação:

TECLA escreveu:

Text5 = CDbl(Text1) + CDbl(Text2) + CDbl(Text3) + CDbl(Text4)


ola tecla tbm ja tentei desse jeito, mas o resultado fica [Ô]0[Ô] ele não faz a somatoria.
mas tbm só consegui com o uso de um botão com a sintaxe
private sub cmdsoma()
textbox5.text =CDbl(Textbox1.text) + CDbl(Textbox2.text) + CDbl(Textbox3.text) + CDbl(Textbox4.text)
end sub
e tbm a sintaxe:
private sub cmdsoma()
textbox5.text =val(Textbox1.text) + val(Textbox2.text) + val(Textbox3.text) + val(Textbox4.text)
end sub
mas nada deu certo
e eu queria uma sub rotina que somasse automaticamente

agradeço pela ajuda
TECLA 17/10/2009 16:07:51
#325581
Poste o arquivo (.ZIP) aqui no tópico pra gente dá uma olhada.
PELLENSE 17/10/2009 21:28:09
#325591
não consegui postar, da uma mensagem de arquivo xls invalido! mas é um formulario de vba com varias textbox de um lado com a descrição do produto e com a função vlookup da o valor na textbox ao lado ,e eu queria fazer que numa outra textbox desse o valor total da compra, só uma soma das outras textbox, mas que somasse ao mesmo tempo que as textbox com o valor do poduto fosse preenchida
PELLENSE 18/10/2009 19:35:33
#325620
estou postando o arquivi para ver se alguem pode me dar uma ajuda
EDERMIR 18/10/2009 21:46:25
#325627
Citação:

TECLA escreveu:

Text5 = CDbl(Text1) + CDbl(Text2) + CDbl(Text3) + CDbl(Text4)


Não sei se é o caso, mas é provável que o símbolo de moeda (R$) causa o retorno de 0.00 em CDBL.
Modifique para:
Wvalaux = CDbl(replace(ucase(Text1.text,[Ô]R$[Ô],[Ô][Ô])))
Wvalaux = Wvalaux + CDbl(replace(ucase(Text2.text,[Ô]R$[Ô],[Ô][Ô])))
Wvalaux = Wvalaux + CDbl(replace(ucase(Text3.text,[Ô]R$[Ô],[Ô][Ô])))
Wvalaux = Wvalaux + CDbl(replace(ucase(Text4.text,[Ô]R$[Ô],[Ô][Ô])))
Text5.text = Wvalaux

PELLENSE 19/10/2009 17:19:55
#325719
Citação:

EDERMIR escreveu:
TECLA escreveu:

Text5 = CDbl(Text1) + CDbl(Text2) + CDbl(Text3) + CDbl(Text4)

Não sei se é o caso, mas é provável que o símbolo de moeda (R$) causa o retorno de 0.00 em CDBL.
Modifique para:
Wvalaux = CDbl(replace(ucase(Text1.text,[Ô]R$[Ô],[Ô][Ô])))
Wvalaux = Wvalaux + CDbl(replace(ucase(Text2.text,[Ô]R$[Ô],[Ô][Ô])))
Wvalaux = Wvalaux + CDbl(replace(ucase(Text3.text,[Ô]R$[Ô],[Ô][Ô])))
Wvalaux = Wvalaux + CDbl(replace(ucase(Text4.text,[Ô]R$[Ô],[Ô][Ô])))
Text5.text = Wvalaux



ola eder mir tentei desse jeito que voce mandou mas não deu certo deu uma mensagen de numero de argumento incorreto ou atribuição da propriedade invalida e selecionaou o Ucase obrigado pela ajuda
ALVAROVB2009 19/10/2009 17:43:03
#325721
PELLENSE tem um jeito de vc utilizar o ccur
text5.text = ccur(Text1.text) + ccur(Text2.text) + ccur(Text3.text) + ccur(Text4.text)

Testa ai

Abraço
PELLENSE 19/10/2009 18:13:16
#325725
Citação:

ALVAROVB2009 escreveu:
PELLENSE tem um jeito de vc utilizar o ccur
text5.text = ccur(Text1.text) + ccur(Text2.text) + ccur(Text3.text) + ccur(Text4.text)

Testa ai

Abraço


muito obrigado pela ajuda mas tem um probleminha ele só funciona se todas as textbox[ô]s estiverem preenchidas se eu tentar fazer uma soma parcial só com as textbox1 e textbox2 e as outras em branco ele da erro de tipos incompativeis
se poder me ajudar nesse probleminha ficaria muito grato
ALVAROVB2009 20/10/2009 08:12:24
#325756
Resposta escolhida
PELLENSE faz uma verificação
text5.text = ccur(IIF(len(trim(text1.text))>0,text1.text,0))) + ccur(IIF(len(trim(text2.text))>0,text2.text,0))) + ccur(IIF(len(trim(text3.text))>0,text3.text,0))) + ccur(IIF(len(trim(text4.text))>0,text4.text,0)))

Aqui estamos vendo se o text esta em branco e colocando o valor 0 no text

Acho que isso pode te ajudar
Tópico encerrado , respostas não são mais permitidas