Admaury, não tenho como ver seu modelo no momento, então vou colocar uma rotina que eu usei a um tempo atraz que verifica se as celulas estão preenchidas, observe que para ficar mais limpo e fácil de identificar as celulas eu Nomeei as mesmas, essa rotina tem varias verificaçõess de celulas, mas reduzi só para exemplificar, veja se consegue adaptar a sua questão, só não esqueça que se nomear suas celulas alterar na rotina.
Sub VerificaCampos()
    Dim sConfirma   As Integer
    Dim strVazia
    Dim msg, MsgI
    
    msg = "Preenchimento Obrigatório"   ' Define a mensagem
    MsgI = "Preenchimento Opcional"   ' Define a mensagem
    
    If Range("sCelData").Value = "" Then 'Range DATA
            strVazia = "Data"
            MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
            Range("sCelData").Activate
            Exit Sub
        
        ElseIf Range("sCelDoc").Value = "" Then 'Range Documento
                    strVazia = "Documento"
                    MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
                    Range("sCelDoc").Activate
                Exit Sub
                                
        ElseIf Range("sCelEndereco").Value = "" Then 'Range Endereço
                    strVazia = "Endereco"
                    MsgBox "Campo " & (strVazia & " em Branco"), vbCritical, msg
                    Range("sCelEndereco").Activate
                Exit Sub
        
        ElseIf Range("sCelObs").Value = "" Then 'Range OBS com exigindo confirmação
                    strVazia = "Observação"
                    sConfirma = MsgBox("Campo " & (strVazia & " em Branco") _
                    & vbCrLf & vbCrLf & "Deseja Continuar ?", vbYesNo + vbInformation, MsgI)
      
            If sConfirma = vbNo Then
                    Range("sCelObs").Activate
                Exit Sub
    
            End If
        'Após verificações continua o Cadastro chamando a rotina
        'Call LançarNovo
    Else
        'Call LançarNovo
    End If
End Sub
Essa rotina impede de Salvar após a verificação, você tem de colar no Evento do modulo da pasta "Private Sub Workbook_BeforeSave" e não da planilha.
É só um exemplo de verificação de algumas celulas antes de SALVAR, tem de ser ajustada ao que precisa.
Private Sub Workbook_BeforeSave(ByVal SaveAsUi As Boolean, Cancel As Boolean)
    'Impede Salvar Como
    Cancel = True
    'Verifica se as células A1, B1 e C1 estão vazias
    If IsEmpty(Range("Plan1!A1")) Or IsEmpty(Range("Plan1!B1")) Or IsEmpty(Range("Plan1!C1")) Then
        Mensagem = MsgBox("Celulas A1, B1 ou C1 estão vazias.", vbExclamation, "Documento não será salvo")
    Exit Sub
    
    End If
End Sub
Essa rotina impede de IMPRIMIR após a verificação, você tem de colar no Evento do modulo da pasta "Private Sub Workbook_BeforePrint" e não da planilha.
É só um exemplo de verificação de algumas celulas antes de IMPRIMIR tem de ser ajustada ao que precisa.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
'Impede Imprimir
Cancel = True
'Verifica se as células A1, B1 e C1 estão vazias
    If IsEmpty(Range("Plan1!A1")) Or IsEmpty(Range("Plan1!B1")) Or IsEmpty(Range("Plan1!C1")) Then
        Mensagem = MsgBox("Células A1, B1 ou C1 estão vazias.", vbExclamation, "Documento não será Impresso")
        Exit Sub
    
    End If
End Sub
Espero que ajude.
[]s
Mauro Coutinho
                                                                                                	                                                
	                                         
                    
                    	
                            Postado : 09/10/2019 7:37 am