Visual Basic - Suma de caracteres en textbox (novato)

Life is soft - evento anual de software empresarial
   
Vista:

Suma de caracteres en textbox (novato)

Publicado por José (3 intervenciones) el 25/02/2014 12:17:39
Estoy aprendiendo el visual basic y os voy a plantear un caso, en un texbox quiero hacer operaciones con caracteres por textbox, es decir, si en un texbox tengo 1234 me haga la operación 1+2+3+4.
Lo he intentado pero no lo consigo, se que algo estoy haciendo mal o algún concepto no lo tengo claro y creo yo que lo tengo claro, hago lo siguiente
1
2
3
4
5
6
7
8
9
10
11
12
Dim uno as string
Dim dos as string
Dim tres as string
Dim cuatro as string
Dim total as string
 
Uno = left (txttotal.text, 1)
Dos = mid (txttotal.text, 2,2)
Tres = mid (txttotal.text 3,3)
Cuatro= right (txttotal.text, 1)
Total = uno+dos+tres+cuatro
Msgbox "la suma es" & total

Lo único que consigo es extraerlos y no me los suma... ¿Qué error tengo? El mid no se realmente si lo estoy haciendo bien ya que le digo que inicie en el segundo carácter y termine en el mismo. Realmente quiero comprender el fallo ya que luego, cuando lo comprenda, quiero multiplicar cada carácter por un número y con el total hacer operaciones.
Muchas gracias por ayudarme, es difícil para uno que nunca estudio programación
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Suma de caracteres en textbox (novato)

Publicado por pedro luis (56 intervenciones) el 25/02/2014 14:00:01
Private Sub Form_Load()
uno = Left(txttotal.Text, 1)
dos = Mid(txttotal.Text, 2, 1)
tres = Mid(txttotal.Text, 3, 1)
cuatro = Right(txttotal.Text, 1)
total = uno + dos + tres + cuatro
MsgBox "la suma es" & total
End Sub

O sea apartir del elemento 2 cojo 1, del elemento 3 cojo1 y tambien cojo 1 por la derecha y por la izquierda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Suma de caracteres en textbox (novato)

Publicado por José (3 intervenciones) el 25/02/2014 14:18:37
Muchas gracias por la contestación , cuando llegue a casa lo pruebo...
Pero las variables dim las nombro no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Suma de caracteres en textbox (novato)

Publicado por xve (178 intervenciones) el 25/02/2014 18:07:27
Prueba a pasar los valores a enteros con:

1
Total = val(uno)+val(dos)+val(tres)+val(cuatro)
o
1
Total = CInt(uno)+CInt(dos)+CInt(tres)+CInt(cuatro)

Comentanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Suma de caracteres en textbox (novato)

Publicado por Diego (33 intervenciones) el 25/02/2014 18:54:12
El problema ya te lo an solucionado debes convertir las variables uno,dos,tres,cuatro a tipo numerico para realizar las operaciones.

Cuando sumas variable string el resultado es concatenar cadena
Dim A as String = 'CADENA'
Dim B as String = 'CADENA 2 '

A+B = CADENACADENA2 ---> QUE ES LO MISMO QUE A&B
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Suma de caracteres en textbox (novato)

Publicado por José (3 intervenciones) el 26/02/2014 15:16:25
Muchas gracias a todos por vuestra colaboración.
Al final puse en un texbox,
Total= val(uno)+val(dos)+val(tres)+val(cuatro)
Y m sumo al fin,Intente poner uno=val{left(txttotal.text,1)} pero no me funciono, me imagino que solo vale el val cuando ya son números.
Como había leído que el integer lo utilizara para operaciones matemáticas y el string para el resto utilice en otra variable el integer para otro textbox y no me hizo falta poner el val ( ya que vi que pusieron el Cint), creía que el string me daba valores.
Lo único que utilice muchas variables habría alguna manera de hacerlo más corto? Con un bucle? Como nunca he utilizado eso, no se sí valdría...
Ahora tengo que hacer otro con cuatro valores de los cuales dos son letras( con valor numérico, dependiendo de cual sea) y otros dos son números, tengo que operar con ellas.
Tengo que pensar como hacerlo y si tengo algún problema os pregunto...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar