Cambios en tiempo real en textbox o Label

JIPM

New Member
Joined
Nov 19, 2021
Messages
15
Office Version
  1. 2016
Buenos días a todos los miembros del Foro.
Hoy vengo con una duda y me gustaría que puedieran ayudarme.
Estoy haciendo algunos cálculos en diferentes TextBox, pero quiero que en un TextBox o Label específico se vaya mostrando una medida que yo vaya introduciendo los valores el resultado de esa operación matemática (+, -, /, *)
Qué código uso, en qué Evento ...
Por favor...
Gracias y que tengan excelente día.
Saludos
JIPM
 
¿Cuál es la relación de los datos de la hoja con el formulario?
Es decir, al momento de abrir el formulario, cargas en el formulario algunos datos de la hoja?
O en el formulario vas a capturar todos los textbox?
Los cálculos los vas a hacer en la hoja o quieres que se hagan en el formulario?

Te ayudo con el cálculo del cuadro de texto "promedio mes" . Para ello debes decirme, qué cuadro de texto intervienen en el cálculo, cómo se llama cada cuadro de texto, qué valores de ejemplo introduzco en cada cuadro de texto y cuál sería el resultado en el cuadro de texto "promedio mes"
Buenos días Profesor. ¿Cómo se encuentra de salud usted y su familia? Espero que estén bien.
Pretendo capturar todo en los TextBox y pasarlo a la hoja. La hoja la mostré con formulas, porque entendí que era mejor para ustedes con respecto a lo que yo necesito obtener, o sea, los cálculos.
Gracias.
Un saludos
JIPM
 
Upvote 0

Excel Facts

What is the shortcut key for Format Selection?
Ctrl+1 (the number one) will open the Format dialog for whatever is selected.
Debes ser específico en tus peticiones. Recuerda tú estás pidiendo ayuda.
Cómo se llaman los textbox.
 
Upvote 0
Hola Profesor. El resultado del Promedio Mes es exactamente ese, usar la Función Promedio de los 12 Meses detallados arriba.
te adjunto el código que he desarrollado hasta ahora.
Hallar el Total de Salario y que se vaya mostrando en Tiempo Real ya lo hice, quizás no con el mejor o más optimo código pero me funciona y comencé a hacer el de Promedio Mes, pero no me lo muestra y cuando voy a la Hoja no lo agrega.

Opción explícita
Sub privado Bnt7_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Left = Me.Left + Me.Bnt7.Left + Me.Bnt7.Width
.Top = Me.Top + Me.Bnt7.Top + Me.Bnt7.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No7 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn0_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn0.Left + Me.Btn0.Width
.Top = Me.Top + Me.Btn0.Top + Me.Btn0.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No0 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn2_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn2.Left + Me.Btn2.Width
.Top = Me.Top + Me.Btn2.Top + Me.Btn2.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No2 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn3_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn3.Left + Me.Btn3.Width
.Top = Me.Top + Me.Btn3.Top + Me.Btn3.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No3 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn4_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Yo. Izquierda + Yo.Btn4.Izquierda + Yo.Btn4.Ancho
.Top = Me.Top + Me.Btn4.Top + Me.Btn4.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No4 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn5_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn5.Left + Me.Btn5.Width
.Top = Me.Top + Me.Btn5.Top + Me.Btn5.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No5 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn6_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn6.Left + Me.Btn6.Width
.Top = Me.Top + Me.Btn6.Top + Me.Btn6.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No6 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn8_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn8.Left + Me.Btn8.Width
.Top = Me.Top + Me.Btn8.Top + Me.Btn8.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No8 = Eco_Fecha
Terminara si
End Sub
Sub privado BtnCalcular_Click ()

Hoja23.Range ("E5") = Nombre.Text

Hoja23.Range ("D8") = Mes1.Texto
Hoja23.Range ("D9") = Mes2.Text
Hoja23.Range ("D10") = Mes3.Text
Hoja23.Range ("D11") = Mes4.Texto
Hoja23.Range ("D12") = Mes5.Text
Hoja23.Range ("D13") = Mes6.Texto
Hoja23.Range ("D14") = Mes7.Text
Hoja23.Range ("D15") = Mes8.Text
Hoja23.Range ("D16") = Mes9.Text
Hoja23.Range ("D17") = Mes10.Text
Hoja23.Range ("D18") = Mes11.Text
Hoja23.Range ("D19") = Mes12.Text

Hoja23.Range ("F8") = DiasCertificado.Text
Hoja23.Range ("H8") = CDate (Desde.Text)
Hoja23.Range ("I8") = CDate (Hasta.Text)
Hoja23.Range ("K9") = CmbAplicar.Text

Hoja23.Range ("I13") = CDate (No0.Text)
Hoja23.Range ("I14") = CDate (No2.Text)
Hoja23.Range ("I15") = CDate (No3.Text)
Hoja23.Range ("I16") = CDate (No4.Text)
Hoja23.Range ("I17") = CDate (No5.Text)
Hoja23.Range ("I18") = CDate (No6.Text)
Hoja23.Range ("I19") = CDate (No7.Text)
Hoja23.Range ("I20") = CDate (No8.Text)


Hoja23.Range ("D21") = Formato (TxtPromedioMes, "#, ## 0.00")
Hoja23.Range ("D23") = Carencia.Text


MsgBox "Cálculo Realizado con Éxito", vbInformation, "COLOSSUS"

End Sub
Sub privado BtnDesde_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.BtnDesde.Left + Me.BtnDesde.Width
.Top = Yo.Top + Yo.BtnDesde.Top + Yo.BtnDesde.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.Desde = Eco_Fecha
Terminara si
End Sub
Sub privado BtnHasta_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Yo.Left + Yo.BtnHasta.Left + Yo.BtnHasta.Width
.Top = Yo.Top + Yo.BtnHasta.Top + Yo.BtnHasta.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.Hasta = Eco_Fecha
Terminara si
End Sub
Sub privado BtnImprimirN_Click ()
Dim resultado como cadena
Dim X tan largo
Application.ScreenUpdating = True
resultado = MsgBox ("¿Desea imprimir el Reporte de Subsidio?", vbYesNo + vbQuestion, "Sistemas COLOSSUS")
Seleccione el resultado del caso
Caso vb Sí:
Hojas de cálculo ("Subsidio"). Seleccionar
X = Application.Dialogs (xlDialogPrinterSetup) .Show 'Muestra las impresoras instaladas
Si X = Falso, salga de Sub
ActiveWindow.SelectedSheets.PrintOut Copias: = 1, Clasificar: = Verdadero, _
IgnorePrintAreas: = Falso
MsgBox "Información enviada a la Impresora con Éxito", vbInformation, "Sistemas COLOSSUS"
Caso vbNo:
Cerrar
Finalizar Seleccionar
Seleccione el resultado del caso
Caso vbNo:
Cerrar
Finalizar Seleccionar
End Sub
Sub privado Btn Salida_Click ()
Dim Nombre como cadena
Nombre = "Subsidio"
If MsgBox ("Seguro Desea Salir del Reporte de" & Nombre & "" & Chr (13), vbQuestion + vbYesNo, "COLOSSUS") = vbYes Entonces
Descargame
Salir de Sub
Fin
Terminara si
End Sub
Sub privado Mes1_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes10_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes11_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Private Sub Mes12_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes2_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes3_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes4_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes5_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes6_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes7_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes8_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado Mes9_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12
End Sub
Sub privado TxtPromedioMes_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtPromedioMes = Application.WorksheetFunction.Average (t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12)
End Sub

Sub UserForm_Initialize privado ()

Conmigo.CmbAplicar
.AddItem "50%", 0
.AddItem "60%", 1
.Añadir elemento "70%", 2
.Añadir elemento "80%", 3
.Añadir elemento "90%", 4
Terminar con
Me.LblFecha.Caption = Formato (Fecha, "dd / mmmm / aaaa")
Llamar IniciarRelorgio
End Sub
En el caso de Promedio Días es el Promedio Mes dividido (/) entre 24 ...
En los Label Total Días a Contar (TotalDContar) es el resultado de la Función = DIAS.LAB.INTL (H8, I8,11, I13: I20).
en Total Días a Pagar (`TotalDPagar) es el resultado de la resta de TotalDContar menos (-) Días de Carencia (Carencia).
En el caso del Label Total Promedio Días (TotalPDias) es el Total de Promedio Dias multiplicado (*) por Total Días a Pagar
y el Neto a Cobrar (Neto) es el resultado de Total Promedio Dias (TotalPDias) multiplicado (*) por el% a Aplicar (CmbAplicar) y dividido (/) entre 100, o sea, porciento. Pero necesito que estos resultados que le estoy dado se vayan mostrando en tiempo real para ir sabiendo si lo que va haciendo mi esposa está bien.
Lo que está entre paréntesis () son los nombre de los TextBox y Label.
Gracias por todo Profesor Dante.
Un abrazo
JIPM
 
Upvote 0
Solamente te pedí el nombre de los textbox. Pero ya los vi en tu código. Preparo el código y lo pongo aquí.

1638673721833.png


NOTA: Para un futuro, para insertar código en este foro, debes seleccionar el icono vba y evita que el traductor realice la traducción de tu código.
1638673791576.png
 
Upvote 0
Te ayudo con el cálculo del textbox "promedio mes".
Va el código para el promedio de mes:

VBA Code:
Private Sub Mes1_Change()
  Call Promediar
End Sub
Private Sub Mes2_Change()
  Call Promediar
End Sub
Private Sub Mes3_Change()
  Call Promediar
End Sub
Private Sub Mes4_Change()
  Call Promediar
End Sub
Private Sub Mes5_Change()
  Call Promediar
End Sub
Private Sub Mes6_Change()
  Call Promediar
End Sub
Private Sub Mes7_Change()
  Call Promediar
End Sub
Private Sub Mes8_Change()
  Call Promediar
End Sub
Private Sub Mes9_Change()
  Call Promediar
End Sub
Private Sub Mes10_Change()
  Call Promediar
End Sub
Private Sub Mes11_Change()
  Call Promediar
End Sub
Private Sub Mes12_Change()
  Call Promediar
End Sub

Sub Promediar()
  Dim i As Long, n As Long
  Dim ntotal As Double
  For i = 1 To 12
    With Me.Controls("Mes" & i)
      If IsNumeric(.Value) Then
        n = n + 1
        ntotal = ntotal + CDbl(.Value)
      End If
    End With
  Next
  TxtPromedioMes = ntotal / n
End Sub
 
Upvote 0
Va el código para el promedio de mes:

[CÓDIGO = vba]
Sub privado Mes1_Change ()
Llamar Promediar
End Sub
Sub privado Mes2_Change ()
Llamar Promediar
End Sub
Sub privado Mes3_Change ()
Llamar Promediar
End Sub
Sub privado Mes4_Change ()
Llamar Promediar
End Sub
Sub privado Mes5_Change ()
Llamar Promediar
End Sub
Sub privado Mes6_Change ()
Llamar Promediar
End Sub
Sub privado Mes7_Change ()
Llamar Promediar
End Sub
Sub privado Mes8_Change ()
Llamar Promediar
End Sub
Sub privado Mes9_Change ()
Llamar Promediar
End Sub
Sub privado Mes10_Change ()
Llamar Promediar
End Sub
Sub privado Mes11_Change ()
Llamar Promediar
End Sub
Private Sub Mes12_Change ()
Llamar Promediar
End Sub

Sub Promediar ()
Dim i tan largo, n tan largo
Dim ntotal como doble
Para i = 1 a 12
With Me.Controls ("Mes" & i)
Si IsNumeric (.Value) Entonces
n = n + 1
ntotal = ntotal + CDbl (.Value)
Terminara si
Terminar con
próximo
TxtPromedioMes = ntotal / n
End Sub
[/CÓDIGO]
Ok Profesor. Gracias. En lo adelante uso el icono VBA.
Gracias por el código.
JIPM
 
Upvote 0
Buenas Noches profesor Dante. Espero que se encuentre bien de Salud.
Cambié los Label por TextBox.
Mi profesor, yo ya resolví también el tema de hallar el Promedio Días y funciona perfecto, creo haber entendido su consejo, incluso hice los cálculos de los TextBox que sustituí, pero no se si funcionan porque me falta el código del TextBox Total Dias a Contar (TotalDContar) porque ahí va la función = DIAS.LAB.INTL (H8, I8,11, I13: I20) y no he podido con ella, lo traté con FormulaLocal y nada. Por favor, sería tan amable de ayudarme con esto y de paso me revisa los otros cálculos que he hecho para estar seguro. No lo tome a mal, es otro favor que le pido para ver si puedo terminar con esto y seguir avanzando en este Proyecto que ya casi concluyo.
Le dejo el código.
Bueno, verdaderamente no sé como trabajar con el icono de VBA e insertar el código ...

Un saludo y excelente semana.

JIPM
 
Upvote 0
Bueno, verdaderamente no sé como trabajar con el icono de VBA e insertar el código ...


Solamente presiona el icono que está en la barra de iconos:

1638791791951.png


Te aparecen las etiquetas de código (code tag)

Y entre ellas pones el código

1638791860155.png
 
Upvote 0
Solamente presiona el icono que está en la barra de iconos:

View attachment 52758

Te aparecen las etiquetas de código (etiqueta de código)

Y entre ellas pones el código

View attachment 52759
Buenos días Profesor ...
Voy a INTENTARLO, PORQUE CREO QUE ESO FUE LO QUE HICE AYER Y NADA ...
[CÓDIGO = vba]
Sub privado Bnt7_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Left = Me.Left + Me.Bnt7.Left + Me.Bnt7.Width
.Top = Me.Top + Me.Bnt7.Top + Me.Bnt7.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No7 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn0_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn0.Left + Me.Btn0.Width
.Top = Me.Top + Me.Btn0.Top + Me.Btn0.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No0 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn2_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn2.Left + Me.Btn2.Width
.Top = Me.Top + Me.Btn2.Top + Me.Btn2.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No2 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn3_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn3.Left + Me.Btn3.Width
.Top = Me.Top + Me.Btn3.Top + Me.Btn3.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No3 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn4_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Yo. Izquierda + Yo.Btn4.Izquierda + Yo.Btn4.Ancho
.Top = Me.Top + Me.Btn4.Top + Me.Btn4.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No4 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn5_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn5.Left + Me.Btn5.Width
.Top = Me.Top + Me.Btn5.Top + Me.Btn5.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No5 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn6_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn6.Left + Me.Btn6.Width
.Top = Me.Top + Me.Btn6.Top + Me.Btn6.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No6 = Eco_Fecha
Terminara si
End Sub
Sub privado Btn8_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.Btn8.Left + Me.Btn8.Width
.Top = Me.Top + Me.Btn8.Top + Me.Btn8.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.No8 = Eco_Fecha
Terminara si
End Sub
Sub privado BtnDesde_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Me.Left + Me.BtnDesde.Left + Me.BtnDesde.Width
.Top = Yo.Top + Yo.BtnDesde.Top + Yo.BtnDesde.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.Desde = Eco_Fecha
Terminara si
End Sub
Sub privado BtnHasta_Click ()
Eco_Fecha = Vacío
Con Frm_EcoCalendario
.StartUpPosition = 0
.Izquierda = Yo.Left + Yo.BtnHasta.Left + Yo.BtnHasta.Width
.Top = Yo.Top + Yo.BtnHasta.Top + Yo.BtnHasta.Height
.Show
Terminar con
Si Eco_Fecha <> Vacío Entonces
Me.Hasta = Eco_Fecha
Terminara si
End Sub
Sub privado BtnCalcular_Click ()

Hoja23.Range ("E5") = Nombre.Text

Hoja23.Range ("D8") = Mes1.Texto
Hoja23.Range ("D9") = Mes2.Text
Hoja23.Range ("D10") = Mes3.Text
Hoja23.Range ("D11") = Mes4.Texto
Hoja23.Range ("D12") = Mes5.Text
Hoja23.Range ("D13") = Mes6.Texto
Hoja23.Range ("D14") = Mes7.Text
Hoja23.Range ("D15") = Mes8.Text
Hoja23.Range ("D16") = Mes9.Text
Hoja23.Range ("D17") = Mes10.Text
Hoja23.Range ("D18") = Mes11.Text
Hoja23.Range ("D19") = Mes12.Text

Hoja23.Range ("F8") = DiasCertificado.Text
Hoja23.Range ("H8") = CDate (Desde.Text)
Hoja23.Range ("I8") = CDate (Hasta.Text)
Hoja23.Range ("K9") = CmbAplicar.Text

Hoja23.Range ("I13") = CDate (No0.Text)
Hoja23.Range ("I14") = CDate (No2.Text)
Hoja23.Range ("I15") = CDate (No3.Text)
Hoja23.Range ("I16") = CDate (No4.Text)
Hoja23.Range ("I17") = CDate (No5.Text)
Hoja23.Range ("I18") = CDate (No6.Text)
Hoja23.Range ("I19") = CDate (No7.Text)
Hoja23.Range ("I20") = CDate (No8.Text)


Hoja23.Range ("D21") = Formato (TxtPromedioMes, "#, ## 0.00")
Hoja23.Range ("D23") = Carencia.Text


MsgBox "Cálculo Realizado con Éxito", vbInformation, "COLOSSUS"

End Sub

Sub privado BtnImprimirN_Click ()
Dim resultado como cadena
Dim X tan largo
Application.ScreenUpdating = True
resultado = MsgBox ("¿Desea imprimir el Reporte de Subsidio?", vbYesNo + vbQuestion, "Sistemas COLOSSUS")
Seleccione el resultado del caso
Caso vb Sí:
Hojas de cálculo ("Subsidio"). Seleccionar
X = Application.Dialogs (xlDialogPrinterSetup) .Show 'Muestra las impresoras instaladas
Si X = Falso, salga de Sub
ActiveWindow.SelectedSheets.PrintOut Copias: = 1, Clasificar: = Verdadero, _
IgnorePrintAreas: = Falso
MsgBox "Información enviada a la Impresora con Éxito", vbInformation, "Sistemas COLOSSUS"
Caso vbNo:
Cerrar
Finalizar Seleccionar
Seleccione el resultado del caso
Caso vbNo:
Cerrar
Finalizar Seleccionar
End Sub
Sub privado Btn Salida_Click ()
Dim Nombre como cadena
Nombre = "Subsidio"
If MsgBox ("Seguro Desea Salir del Reporte de" & Nombre & "" & Chr (13), vbQuestion + vbYesNo, "COLOSSUS") = vbYes Entonces
Descargame
Salir de Sub
Fin
Terminara si
End Sub
Sub privado Mes1_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
End Sub
Sub privado Mes10_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes11_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Private Sub Mes12_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes2_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes3_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes4_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes5_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes6_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes7_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes8_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub privado Mes9_Change ()
Dim t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12 como doble
En caso de error, reanudar siguiente
If IsNumeric (FrmSubsidio.Mes1) Entonces t1 = CDec (FrmSubsidio.Mes1)
If IsNumeric (FrmSubsidio.Mes2) Entonces t2 = CDec (FrmSubsidio.Mes2)
If IsNumeric (FrmSubsidio.Mes3) Entonces t3 = CDec (FrmSubsidio.Mes3)
If IsNumeric (FrmSubsidio.Mes4) Entonces t4 = CDec (FrmSubsidio.Mes4)
If IsNumeric (FrmSubsidio.Mes5) Entonces t5 = CDec (FrmSubsidio.Mes5)
If IsNumeric (FrmSubsidio.Mes6) Entonces t6 = CDec (FrmSubsidio.Mes6)
If IsNumeric (FrmSubsidio.Mes7) Entonces t7 = CDec (FrmSubsidio.Mes7)
If IsNumeric (FrmSubsidio.Mes8) Entonces t8 = CDec (FrmSubsidio.Mes8)
If IsNumeric (FrmSubsidio.Mes9) Entonces t9 = CDec (FrmSubsidio.Mes9)
If IsNumeric (FrmSubsidio.Mes10) Entonces t10 = CDec (FrmSubsidio.Mes10)
If IsNumeric (FrmSubsidio.Mes11) Entonces t11 = CDec (FrmSubsidio.Mes11)
If IsNumeric (FrmSubsidio.Mes12) Entonces t12 = CDec (FrmSubsidio.Mes12)

FrmSubsidio.TxtTotalS = Formato (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12, "#, ## 0.00")
Llamar Promediar
Llamar PromediarDias
End Sub
Sub Promediar ()
Dim i tan largo, N tan largo
Dim ntotal como doble
Para i = 1 a 12
With Me.Controls ("Mes" & i)
Si IsNumeric (.Value) Entonces
N = N + 1
ntotal = ntotal + CDbl (.Value)
Terminara si
Terminar con
próximo
TxtPromedioMes = Formato (ntotal / N, "#, ## 0.00")
End Sub
Sub PromediarDias ()
Dim dtotal como doble
dtotal = TxtPromedioMes / 24
TxtPromedioDia = Formato (dtotal, "#, ## 0.00")
End Sub
Sub TotalDiasPagar ()
Dim Contar siempre que
Dim Carencia siempre que
Atenuar TotalDP como doble
TotalDP = Contar - Carencia

TotalDPagar = TotalDP

End Sub
Sub privado Neto_Change ()
Llamar a NetoCobrar
End Sub
Subtotal privadoDContar_Change ()
Llamar Funciones.Calcular_Dias_Lab
End Sub

Subtotal privado DPagar_Change ()
Llamar a TotalDiasPagar
End Sub
Private Sub TxtPromedioDia_Change ()
Llamar PromediarDias
End Sub
Sub DiasPromedioDias ()
Dim dpd como doble
Dim totalp tan largo
Dim promediod tan largo
dpd = TotalDPagar * TxtPromedioDia

TotalPDias = dpd
End Sub
Sub NetoCobrar ()
Dim Neto como doble
Dim aplicar tan largo
Dim dpd tan largo
Neto = (TotalPDias * CmbAplicar) / 100

Neto = Formato (Neto, "#, ## 0.00")
End Sub
Sub UserForm_Initialize privado ()

Conmigo.CmbAplicar
.AddItem "50%", 0
.AddItem "60%", 1
.Añadir elemento "70%", 2
.Añadir elemento "80%", 3
.Añadir elemento "90%", 4
Terminar con


Me.LblFecha.Caption = Formato (Fecha, "dd / mmmm / aaaa")
Llamar IniciarRelorgio

End Sub

[/CÓDIGO]
 
Upvote 0
Pero no traduzcas la página, porque hace la traducción de CODE a CÓDIGO
[CÓDIGO = vba]

[/CÓDIGO]

Y debe ser así:

1638791860155-png.52759


Y para qué pones todo tu código?
Solamente pon una muestra de ejemplo.
 
Upvote 0

Forum statistics

Threads
1,214,601
Messages
6,120,465
Members
448,965
Latest member
grijken

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top