Desglosar contenido de un Textbox

Hola, Tengo el sig problema.

En un formulario tengo un textbox, donde ingreso un numero (cantidad) luego "*" y por ultimo el (código de producto), ejemplo

2*3000

En resumen seria: 2 unidades * (por) 3000 (que es el código del producto).

Lo que necesito es desglosar ese contenido en dos celdas diferentes, ejemplo:

2 en celda "A1" y 3000 en la celda "B1".

como ago????

Hay que tener en cuenta que el numero de cantidad puede ser de mas de (un) dígito, como también el numero de código que puede ser de mas o menos dígitos: ejemplo 33*41652

Muchas gracias

1 respuesta

Respuesta
1

Suponiendo que el cuadro de texto se llama TextBox1 y la hoja Hoja1, el código podría ser:

 [Hoja1!A1].Value = CLng(Left(TextBox1.Value, InStr(TextBox1.Value, "*") - 1))
 [Hoja1!B1].Value = Mid(TextBox1.Value, InStr(TextBox1.Value, "*") + 1) 

Muchísimas gracias, Ya lo había logrado pero de una forma muy rebuscada, y quedaba muy sucio. Obviamente que voy a implementar tu código.

Pero tengo un problemita: Los número los envía a la celda en formato de texto, ¿Cómo puedo hacer para que lo lleve como valor numérico?

A mí no me las pasa como texto. ¿No será que las celdas tienen formato de texto? En este caso, habría que ponerlas formato numérico. De todas formas, para "obligar" a VBA a pasar los datos como números se puede usar la función Val:

 [Hoja1!A1].Value = Val(CLng(Left(TextBox1.Value, InStr(TextBox1.Value, "*") - 1)))
 [Hoja1!B1].Value = Val(Mid(TextBox1.Value, InStr(TextBox1.Value, "*") + 1))

Pero repito que en la prueba que estoy haciendo a mí no me hace falta esto.

La verdad que me has resuelto el problema dando la solución perfecta en ambas consultas, Muchísimas gracias!, Dios te bendiga, dándote mas conocimiento!.

Voy agragarte a mi experto favorito.. Obviamente que te consultaré seguido jeje

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas