none
Preenchimento obrigatório RRS feed

  • Pergunta

  • Bom dia!

    Tenho o seguinte código (abaixo) que, de acordo com a informação contida na célula "C63" (pode ser apenas por estar preenchida ou com base em uma valor contido nela), a planilha não irá salvar caso as células "P63";"AQ63";"AX63";"BF63" estiverem vazias ..

    Minha grande dificuldade e necessidade é aumentar o intervalo, para que esta regra passe a valer para qualquer linha da coluna "C" e consequentemente das demais colunas que não poderão ficar vazias.

    É possível ??

    Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

            With Sheets("Cadastro")
            If .[C63] = 3 Then
            If .[P63] = "" Or .[AQ63] = "" Or .[AX63] = "" Or .[BF63] = "" Then

               MsgBox "Preencher campo(s) vazio"            Sheets("Cadastro").Activate

                Cancel = True

          End If      End If      End With      End Sub

    Desde já agradeço.

    quarta-feira, 16 de agosto de 2017 13:44

Todas as Respostas

  • Option Explicit
    
    Sub teste()
    
    Dim lin As Long
    Dim vazio As Boolean
    vazio = False
    lin = 1
    
    While ThisWorkbook.Sheets("Cadastro").Range("C" & lin) <> "" And vazio = False
    
    If ThisWorkbook.Sheets("Cadastro").Range("C" & lin) = 3 Then
    
    If ThisWorkbook.Sheets("Cadastro").Range("P" & lin) = "" Then
    
    MsgBox "Preencha campo(s) vazio(s)"
    vazio = True
    End If
    
    If ThisWorkbook.Sheets("Cadastro").Range("AQ" & lin) = "" Then
    
    MsgBox "Preencha campo(s) vazio(s)"
    vazio = True
    End If
    
    If ThisWorkbook.Sheets("Cadastro").Range("AX" & lin) = "" Then
    
    MsgBox "Preencha campo(s) vazio(s)"
    vazio = True
    End If
    
    If ThisWorkbook.Sheets("Cadastro").Range("BF" & lin) = "" Then
    
    MsgBox "Preencha campo(s) vazio(s)"
    vazio = True
    End If
    
    End If
    
    
    Wend
    
    
    End Sub


    Anderson Diniz

    • Sugerido como Resposta AndersonFDiniz2 quarta-feira, 16 de agosto de 2017 14:16
    quarta-feira, 16 de agosto de 2017 14:16