Condiciones para abrir/cerrar un informe en un módulo
Diego.
El siguiente módulo muestra un mensaje de texto que indica que el dato introducido en un informe con parámetros no se encuentra en la base de datos, y ofrece la posibilidad de volver a introducir el dato (botón 'Sí') o de renunciar (botón 'No'). Me lo he copiado de la Ayuda de Access y funciona perfectamente. Lo que no encuentro en la Ayuda es qué líneas de código debo añadir para que cuando pincho en 'Sí' me vuelva a mostrar el cuadro para volver a introducir el parámetro (es decir, me vuelva a abrir el informe) y para que cuando pinche en 'No' me cierre el informe.
Correspondería a lo que en el ejemplo de la Ayuda llaman "Perform some action". ¿Cuáles son esas dos acciones?
Private Sub Report_NoData(Cancel As Integer)
Dim Msg, Style, Title, Response, MyString
Msg = "No hay datos. ¿Quiere reintentarlo?"
Style = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal
Title = "Lo siento"
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If
End Sub
El siguiente módulo muestra un mensaje de texto que indica que el dato introducido en un informe con parámetros no se encuentra en la base de datos, y ofrece la posibilidad de volver a introducir el dato (botón 'Sí') o de renunciar (botón 'No'). Me lo he copiado de la Ayuda de Access y funciona perfectamente. Lo que no encuentro en la Ayuda es qué líneas de código debo añadir para que cuando pincho en 'Sí' me vuelva a mostrar el cuadro para volver a introducir el parámetro (es decir, me vuelva a abrir el informe) y para que cuando pinche en 'No' me cierre el informe.
Correspondería a lo que en el ejemplo de la Ayuda llaman "Perform some action". ¿Cuáles son esas dos acciones?
Private Sub Report_NoData(Cancel As Integer)
Dim Msg, Style, Title, Response, MyString
Msg = "No hay datos. ¿Quiere reintentarlo?"
Style = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal
Title = "Lo siento"
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' User chose Yes.
MyString = "Yes" ' Perform some action.
Else ' User chose No.
MyString = "No" ' Perform some action.
End If
End Sub
1 Respuesta
Respuesta de diegofvillar
1