Foro VBATotal
Aprender a programar en Visual Basic
Ejecutar Fórmula Excel en TextBox
Cita de JUES en 9 de octubre de 2024, 18:08Saludos amigos espero estén bien
Introduje unos cambios en el Formulario Conf (frmhhe) con la finalidad de que dependiendo del valor que asuma el txtOpt.Value los valores que se muestren en el txtTDFM.Value y el txtTDL.Value sean iguales al resultado de las fórmulas que he colocado en el Select Case pero que no logro hacer funcionales:
Private Sub txtOpt_Change()
'Validación de la Formula
Select Case txtOpt
Case 1, 2, 4
txtTDL.Value = "=NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$34))"
txtTDFM.Value = "=DAY(EOMONTH(TODAY(),-1))-(NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$34)))"
Case 3
txtTDL.Value = "=NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$18))"
txtTDFM.Value = "=DAY(EOMONTH(TODAY(),-1))-(NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$18)))"
End SelectEnd Sub
Los valores esperados para el mes de Septiembre (por requerimiento técnico se calcula el mes anterior) son: txtTDFM.Value = 9, txtTDL.Value = 21
Saludos amigos espero estén bien
Introduje unos cambios en el Formulario Conf (frmhhe) con la finalidad de que dependiendo del valor que asuma el txtOpt.Value los valores que se muestren en el txtTDFM.Value y el txtTDL.Value sean iguales al resultado de las fórmulas que he colocado en el Select Case pero que no logro hacer funcionales:
Private Sub txtOpt_Change()
'Validación de la Formula
Select Case txtOpt
Case 1, 2, 4
txtTDL.Value = "=NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$34))"
txtTDFM.Value = "=DAY(EOMONTH(TODAY(),-1))-(NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$34)))"
Case 3
txtTDL.Value = "=NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$18))"
txtTDFM.Value = "=DAY(EOMONTH(TODAY(),-1))-(NETWORKDAYS.INTL(EOMONTH(TODAY(),-2)+1,EOMONTH(TODAY(),-1),""0000011"",('USUARIOS & PRIVILEGIOS'!$N$5:$N$18)))"
End Select
End Sub
Los valores esperados para el mes de Septiembre (por requerimiento técnico se calcula el mes anterior) son: txtTDFM.Value = 9, txtTDL.Value = 21
Archivos subidos:- Tienes que conectarte para acceder a las subidas.

Cita de Administrador en 22 de octubre de 2024, 11:27Hola Jues,
Adjunto archivo modificado. Las funciones de las fórmulas no corren en mi versión de Office, por eso he usado la función Date. Adáptalo a tu caso.
Saludos.
Hola Jues,
Adjunto archivo modificado. Las funciones de las fórmulas no corren en mi versión de Office, por eso he usado la función Date. Adáptalo a tu caso.
Saludos.
Archivos subidos:- Tienes que conectarte para acceder a las subidas.