Listbox ayuda

14/01/2009 - 23:03 por Pepito | Informe spam
Hola foro :

la Idea de este formulario es simple recoger valor celda,compararla
con otra cantidad ingresada por el usuario y mostrar la diferencia
entre ambas.

tengo un formulario en el cual tengo 3 listbox

listbox 1 = recoge valor celda activa
listbox 2 = valor proporcionado por el usuario
listbox 3 = diferencia aritmetica entre listbox 1 y listbox 2






Hay varios puntos que no funcionan como deberian

1- Los formatos numericos no funcionan en los 3 listbox
2- las resta aritmetica entre listbox 1 y listbox 2 no se actualizada
en listbox 3


Private Sub UserForm_Activate()

TextBox1 = ActiveCell.Value
If ActiveCell.Value = "" Or 0 Then
TextBox2 = 0
control:
TextBox2.Value = Format(ActiveCell, "Standard")
TextBox3.Value = Format(TextBox3.Value, "#,###.00")
End Sub
 

Leer las respuestas

#1 Héctor Miguel
15/01/2009 - 23:13 | Informe spam
hola, jose ! (disculpas si este mensaje aparece mas de una vez... parece que los servidores "andan servidos") :))

1) ya que NO son controles listbox, toma en cuenta que los controles textbox "toman" cualquier texto (por omision)
razon por la que tampoco "tienen por que" saber/intuir/adivinar/... que quisieras "ver" un formato numerico personalizado
(de hecho...) podrias tener algunos problemillas (en vba) si el usuario introduce signos de puntuacion en "su" textbox -?-

2) tampoco debieras usar el evento '_activate', puesto que este se dispara luego de mostrarse el formulario (evento '_initialize')
o cada vez que lo (re)activas, suponiendo que el formulario se muestra cono "No modal" (varios userforms interactuando)
y el usuario aun NO ha puesto "su numero" en el textbox que le toca (creo que no hay nada que actualizar ?)

3) prueba a "refrescar" el contenido del textbox3 (p.e.) con algun commandbutton o en el evento '_exit' del textbox2 -?-

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

__ OP __
la Idea de este formulario es simple recoger valor celda
compararla con otra cantidad ingresada por el usuario y mostrar la diferencia entre ambas.
Hay varios puntos que no funcionan como deberian
1- Los formatos numericos no funcionan en los 3 listbox
2- las resta aritmetica entre listbox 1 y listbox 2 no se actualizada en listbox 3

Private Sub UserForm_Activate()
TextBox1 = ActiveCell.Value
If ActiveCell.Value = "" Or 0 Then
TextBox2 = 0
control:
TextBox2.Value = Format(ActiveCell, "Standard")
TextBox3.Value = Format(TextBox3.Value, "#,###.00")
End Sub

Preguntas similares