Porcentaje en UserForm

Tavo: vi la respuesta que le diste a LuisFerMarti el 22 de Marzo, sobre Formato de % en un TextBox. Excelente (como siempre). Pero...
Vos sabés que soy fan de los UF, y te planteo lo siguiente (porque me vendría excepcionalmente bien), que sería más o menos el mismo caso:
Tengo Label1.Caption = Ingresos Totales; Label2.Caption = Ingresos Suc. MardelPlata; Label3.Caption = ...;...;...;... , siendo Label1 la SUMATORIA de los otros Labels (sin aplicar fórmulas en las Hojas Excel de donde saco la info). Quiero colocar, al lado del Label2, otro Label (15), que me indique QUE PORCENTAJE REPRESENTA EL VALOR DEL LABEL2 CON RESPECTO AL LABEL 1 (y así, con todos)... Tengo la idea, pero no doy con el Código correcto...
Un abrazo

1 Respuesta

Respuesta
1
Creo que te entiendo.
No sería hacer algo como:
TextBox3.Text = Str((Int(TextBox1.Text) / Int(TextBox2.Text))*100) & "%"
Si por ejemplo TB1 = 25 y TB2 = 100, entonces 25/100 *100 = 25%
¿Entendí tu pregunta?
¡Perfecto, maestro!
Aunque, como te había puesto LABELS, lo reemplacé por:
Label3.Caption = Str((Int(Label2.Caption) / Int(Label1.Caption)) * 100) & "%"
Ahora, en algunos casos me va a dar con DECIMALES...
¡¿Cómo hago?!
(De paso, me servirá para otras aplicaciones)
Un abrazo
Tienes razón, deberías reemplazar la función Int por la función Val.
Seguimos con el "perfecto, pero..."
¡Me da con un montón de decimales! ¿Habría que aplicarle format Label3... ¡Y ahí siempre se me complica!
Otro abrazo
¡Ah! ¿Y en qué momento (en qué evento)? Todo está en UserForm_Activate(), porque son sólo datos informativos, sin variables. En otro caso, lo aplicaría en un ComboBox_Change(), cuando seleccione alguna opción de parámetros.
Entonces quedarìa asì:
TextBox3.Text = Str((Round(Val(TextBox1.Text) / val(TextBox2.Text),2) * 100) & "%"
En cuando a donde, pienso que igual lo puedes poner en el Userform_Activate, si estas tomando los valores al activarse el UF.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas