Executar macro ao clicar na célula: 2 colunas, 2 macros  [Resolvido]

Visual Basic for Aplication e macros no Excel.
Regras do fórum
Sua dúvida foi respondida? Marque como RESOLVIDO em seus tópicos, usando o botão com marca verde. Imagem

Executar macro ao clicar na célula: 2 colunas, 2 macros

Mensagempor topscore » Qui Mai 16, 2019 11:44 pm

Boa noite!

Mais uma vez encontrei uma daquelas situações que parece que só eu consigo criar! É o seguinte:
Range A1:B20, por exemplo.
Quero clicar nas células da coluna A, e elas imediatamente são preenchidas com "Conforme".
Caso já estejam preenchidas, deleta o "Conforme" e ficam vazias.
Não tive problemas até aqui. Nas colunas B o procedimento é o mesmo, porém, o valor é "Não conforme".
Não consigo fazer funcionar na coluna B de jeito nenhum.
Ah, haverá células protegidas no meio dessa range, por isso o "On Error Resume Next", funciona perfeitamente.
Alguém pode me ajudar? Segue o código:

Código: Selecionar todos
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    On Error Resume Next
    If Intersect(Target, Me.Range("A1:a20")) Is Nothing Then Exit Sub
    If ActiveCell.Value = "" Then
        ActiveCell.FormulaR1C1 = "Conforme"
    Else
    If ActiveCell.Value = "Conforme" Then
        ActiveCell.FormulaR1C1 = ""
   
    If Intersect(Target, Me.Range("b1:b20")) Is Nothing Then Exit Sub
    If ActiveCell.Value = "" Then
        ActiveCell.FormulaR1C1 = "Não Conforme"
    Else
    If ActiveCell.Value = "Não Conforme" Then
        ActiveCell.FormulaR1C1 = ""
    End If
    End If
    End If
    End If
End Sub
topscore
Membro
Membro
 
Mensagens: 3
Registrado em: Sex Abr 10, 2015 9:12 pm
Has thanked: 0 time
Have thanks: 0 time

{ SO_SELECT }

Re: Executar macro ao clicar na célula: 2 colunas, 2 macros  [Resolvido]

Mensagempor Mauro Coutinho » Sex Mai 17, 2019 9:51 am

Tente assim :

Código: Selecionar todos
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    On Error Resume Next
    If Not Intersect(Target, Me.Range("A1:a20")) Is Nothing Then
            If ActiveCell.Value = "" Then
                ActiveCell.FormulaR1C1 = "Conforme"
        Else
             If ActiveCell.Value = "Conforme" Then
                 ActiveCell.FormulaR1C1 = ""
           
             End If
        End If
       
        Else
            If Intersect(Target, Me.Range("b1:b20")) Is Nothing Then Exit Sub
                If ActiveCell.Value = "" Then
                    ActiveCell.FormulaR1C1 = "Não Conforme"
            Else
                If ActiveCell.Value = "Não Conforme" Then
                    ActiveCell.FormulaR1C1 = ""
                End If
            End If
    End If
End Sub
Mauro Coutinho
 

Re: Executar macro ao clicar na célula: 2 colunas, 2 macros

Mensagempor topscore » Sex Mai 17, 2019 12:09 pm

Perfeito!
Tão simples depois de ver o código pronto.
Obrigado Mauro!
topscore
Membro
Membro
 
Mensagens: 3
Registrado em: Sex Abr 10, 2015 9:12 pm
Has thanked: 0 time
Have thanks: 0 time


Voltar para VBA & Macros

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron