Notifications
Clear all

Clicar na célula - Várias condições

8 Posts
1 Usuários
0 Reactions
1,447 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Quero criar uma macro que, caso clique na célula, mude o valor.

Ex:

Se clicar em a1, o valor de e1 seja 1.
Se clicar em a2, o valor de e1 seja 2.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Range("a1") Then
Range("e1").Value = 1
ElseIf Target.Range("a2") Then
Range("e1").Value = 2

End If
End Sub

Mas não tá funcionando.

Alguém pode me ajudar?

 
Postado : 20/06/2012 4:06 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!

Isso deve ajuda-lo!

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 Then Range("E1").Value = Target.Row
End Sub

Att

 
Postado : 20/06/2012 5:35 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Funcionou, mas desse jeito ele vai mudando o valor a partir da linha da célula seleiconada na coluna 1.

Obrigado, mas tipo.

Eu quero algo mais manual mesmo.

Vamos supor que só funcione se for A1 e A2.

Se a selecionada for a1, mudar o valor de e2.
Se a selecionada for a2, mudar o valor de e2.

Bom, porque se eu também quiser dar uma msgbox ao clicar na A1...

obrigado

 
Postado : 20/06/2012 5:52 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!

Sinto muito mas eu não compreendi!!!
Tente explicar melhor, e com muito detalhe!!!!!!!!!!!!
Att

 
Postado : 20/06/2012 5:55 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom, o que eu quero apenas aprender a a dar um comando ao clicar em algumas células.

Exemplo:

Ao clicar em A1, dar uma msgbox "oi"

Ao clicar em A2, dar uma msgbox "oioi"

Ao clicar em b5, dar uma msgbox "oioioi"

E, assim ao eu aprender a dar o comando ao clicar em determinada célula, irei adaptar ao comando que utilizarei futuramente.

 
Postado : 20/06/2012 6:16 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa noite!!

Vou deixar para os colegas que entenderam sua logica :?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column >= 1 Then
    MsgBox "Oi"
    End If
End Sub

Att

 
Postado : 20/06/2012 7:03 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Veja se seria isto, se quiser outras Celulas, é só adicionar mais Cases :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim sTarget
    
    sTarget = Target.Address
    
    Select Case sTarget
    
    Case "$A$1"
        MsgBox "Voce Clicou em A1"
        Range("E1").Value = 1
    
    Case "$A$2"
        MsgBox "Voce Clicou em A2"
        Range("E2").Value = 2
    
    End Select

End Sub

[]s

 
Postado : 20/06/2012 9:35 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Obrigado, Mauro. Era isso mesmo que queria. Obrigado mesmo.

Obrigado, Mauro e Alexandere.

 
Postado : 21/06/2012 7:54 am