Mensaje de Advertencia

Hola Expertos. Necesito que alguien me enseñe cómo puedo hacer para que introducir en una macro que ya tengo elaborada, un mensaje de advertencia al usuario que le indique que le faltan algunos datos por introducir en celdas específicas de una plantilla, antes de que se ejecute el código de impresión. La macro es esta:
Sub Cerrar_Recibo()
Dim Ans, Counter As Long
Dim Nom_Cliente_ As String
Dim intNúmCopias As Integer
Dim imprimir As Integer
Counter = [M2].Value
Nom_Cliente_ = ActiveSheet.Range("A6").Value
Ans = MsgBox(prompt:="¿Desea imprimir y guardar el Recibo de Caja?", Buttons:=vbYesNo, Title:="Santiagro Limitada")
If Ans = vbYes Then
'AQUÍ ES DONDE CONSIDERO QUE DEBE INTRODUCIRSE EL MENSAJE DE ADVERTENCIA
Application.Dialogs(xlDialogPrint).Show , , , 2
If imprimir = True Then
MsgBox "El trabajo se ha enviado a impresión"
Else
MsgBox "La impresión se canceló"
End If
ThisWorkbook.Save
ThisWorkbook.SaveCopyAs "D:\Recibos de Caja\" & CStr(Nom_Cliente_ & " RC " & Counter) & ".xls"
Dim linea_libre As Long
'Application.ScreenUpdating = False
Sheets("Resumen").Select
linea_libre = WorksheetFunction.CountA(Range("A:A")) + 1
Cells(linea_libre, 1).Value = Sheets("RCaja").[A4]
Cells(linea_libre, 2).Value = Sheets("RCaja").[A6]
Cells(linea_libre, 3).Value = Sheets("RCaja").[K6]
Cells(linea_libre, 4).Value = Sheets("RCaja").[N6]
Cells(linea_libre, 5).Value = Sheets("RCaja").[M2]
Cells(linea_libre, 6).Value = Sheets("RCaja").[A12]
Cells(linea_libre, 7).Value = Sheets("RCaja").[I14]
Cells(linea_libre, 8).Value = Sheets("RCaja").[F17]
Cells(linea_libre, 9).Value = Sheets("RCaja").[C19]
Cells(linea_libre, 10).Value = Sheets("RCaja").[C21]
Cells(linea_libre, 11).Value = Sheets("RCaja").[C22]
Cells(linea_libre, 12).Value = Sheets("RCaja").[C23]
Cells(linea_libre, 13).Value = Sheets("RCaja").[-F20]
Sheets("RCaja").Select
'Application.ScreenUpdating = True
'MsgBox "Se ha agregado el Recibo de Caja en el Resumen " & Sheets("RCaja").[I2]
Range("A4").Select
Selection.ClearContents
Range("A6").Select
Selection.ClearContents
Range("N6").Select
Selection.ClearContents
Range("A12").Select
Selection.ClearContents
Range("A14:F16").Select
Selection.ClearContents
Range("C21:C23").Select
Selection.ClearContents
Range("K14").Select
Selection.ClearContents
Counter = Counter + 1
[M2].Value = Counter
'MsgBox "El Recibo de Caja " & Counter - 1 & " ha sido guardado", Title:="Santiagro Limitada"
MsgBox "El Recibo de Caja " & Counter - 1 & " ha sido impreso, guardado y se agregó al Resumen", Title:="Santiagro Limitada"
Else
Exit Sub
End If
End Sub
De antemano. Agradezco a quien pueda ayudarme.
Respuesta
1
Me parece bien donde colcocaste para realizar la validación, prueba introduciendo el siguiente código en tu macro
If Cells(1, 1).Value = "" Or Cells(1, 2).Value = "" Then
MsgBox "Faltan Algnos Datos para realizar la Impresion", vbExclamation, "Faltan datos"
Exit Sub
End If
Allí puedes validar las celdas que requieras para omitir la Impresión.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas