- Este tópico contém 6 respostas, 2 utilizadores e foi actualizado pela última vez há 10 anos, 7 meses por Anónimo.
-
AutorArtigos
-
-
6 de Agosto de 2013 às 13:40 #1339AnónimoInactivo
bom dia galerinha!
não estou conseguindo somar casas decimais. alguém pode me ajudar?
tenho um userform com 60 textbox. então fiz uma função de somar, sempre que o textbox é alterado, usando afterupdate()
segue:
function calcular_1(frm as userform) as long
dim h as integer
for h = 1 to 60
if me.controls(“txtsubtotal” & h).value vbnullstring then
calcular_1 = clng(me.controls(“txtsubtotal” & h).value) + calcular_1
end if
next h
me.txttotal.value = calcular_1
end functionporém, ele não faz distinção de “decimal”. o que devo fazer?
já testei clng, ccur, val, “sem nada”, ….fico no aguardo.
att.
wagner goularte -
6 de Agosto de 2013 às 19:56 #2205AnónimoInactivo
putz galerinha … eu estava marcando …
era só trocar o “as long” por “as double”. ficou assim:
function calcular_1(frm as userform) as double
dim h as integer
for h = 1 to 60
if me.controls(“txtsubtotal” & h).value vbnullstring then
calcular_1 = me.controls(“txtsubtotal” & h).value + calcular_1
end if
next h
me.txttotal.value = format(calcular_1, “0.00”)
end functionatt.
wagner goularte -
7 de Agosto de 2013 às 14:20 #2210jorgerodAdministrador
boa, wagner!!!!! obrigado por colocares aqui a solução!!!!
um abraço!
-
7 de Agosto de 2013 às 14:50 #2211AnónimoInactivo
galerinha,
preciso de uma ajuda. tenho problemas qdo se trata de valores e casas decimais.
estou mandando um exemplo anexo para ficar mais facil a discussão.
qdo coloco casas decimais, no userform ele aparece a multiplicação correta, porém qdo envio para a planilha de excel, esses valores não são validos como número, portanto não consigo somar, subtrair, etc …
se eu coloco vírgula, no userform aparece a conta certa, porem na planilha não.
se eu coloco ponto, no userform não faz a multiplicacao, porem na planilha aparece como valor.entendeu? alguém pode me ajudar a solucionar de uma vez por todas esse assunto.
fico no aguardo.
wagner goularte
Calcular.zip -
7 de Agosto de 2013 às 17:46 #2212jorgerodAdministrador
boas, wagner,
utilizando vírgula no userform: talvez este código te dê o resultado que pretendes. experimenta e diz qq coisa, ok?
private sub commandbutton1_click()
dim indice as long
indice = 1
dim h as integerfor h = 0 to 3
with wsteste.cells(indice + h, 1).value = me.controls(“txtquantidade” & h + 1).value
.cells(indice + h, 1).value = cdbl(.cells(indice + h, 1).value)
.cells(indice + h, 2).value = me.controls(“txtpreco” & h + 1).value
.cells(indice + h, 2).value = cdbl(.cells(indice + h, 2).value)
.cells(indice + h, 3).value = me.controls(“txtsubtotal” & h + 1).value
.cells(indice + h, 3).value = cdbl(.cells(indice + h, 3).value)end with
next hend sub
-
7 de Agosto de 2013 às 17:55 #2213AnónimoInactivo
muito obrigado mais uma vez jorge !!!
-
7 de Agosto de 2013 às 20:30 #1340jorgerodAdministrador
🙂
sempre ao dispor!!!!!! umas para as outras…. 🙂 🙂
-
-
AutorArtigos
- Tem de iniciar sessão para responder a este tópico.