Castro, troque suas rotinas pelas abaixo, se quiser acrescentar mais condições é só adicionar outros ElseIf Range :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim strVazia
Dim msg
msg = "Preenchimento Obrigatório" ' Define a mensagem
If Range("C2").Value = "" Then
strVazia = "Loja"
MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
Range("C2").Activate
Cancel = True
Exit Sub
ElseIf Range("C3").Value = "" Then
strVazia = "Mês"
MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
Range("C3").Activate
Cancel = True
Exit Sub
ElseIf Range("H2").Value = "" Then
strVazia = "Responsáveis"
MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
Range("H2").Activate
Cancel = True
Exit Sub
Else
End If
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim strVazia
Dim msg
msg = "Preenchimento Obrigatório !!!" ' Define a mensagem
If Range("C2").Value = "" Then
strVazia = "LOJA"
MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
Range("C2").Activate
Cancel = True
Exit Sub
ElseIf Range("C3").Value = "" Then
strVazia = "MÊS"
MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
Range("C3").Activate
Cancel = True
Exit Sub
ElseIf Range("H2").Value = "" Then
strVazia = "RESPONSÁVEIS"
MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
Range("H2").Activate
Cancel = True
Exit Sub
Else
End If
End Sub
Faça os testes e veja se é isto.
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 13/05/2015 5:46 pm