Notifications
Clear all

VLookup

6 Posts
3 Usuários
0 Reactions
1,874 Visualizações
(@_will_)
Posts: 0
New Member
Topic starter
 

Olá pessoal,
Preciso de uma ajuda para criar um vba.

O que eu preciso é o seguinte:

Na célula A1 tem um valor 354000, eu preciso de um vba que procure na coluna "G" o valor da célula A1 e quando encontrar o valor na coluna G, na célula ao lado (coluna H) marque um X.

Na coluna A1 pode ser um inbox, posso incluir vários números e os números encontrados na coluna G, deixe na célula ao lado um X

Help me please!

Obrigdao

 
Postado : 02/03/2017 7:06 pm
(@hronconi)
Posts: 314
Reputable Member
 

Este exemplo usa a coluna A inteira e não precisa programação VBA.

 
Postado : 03/03/2017 5:26 am
(@_will_)
Posts: 0
New Member
Topic starter
 

Obrigado pela ajuda hronconi,
O que estou precisando é um pouco diferente, vai precisar de VBA.

Somente a célula A1 vai atribuir um valor aleatório, e este valor será procurado na Coluna H, caso encontre o resultado, na célula ao lado (do valor encontrado), deverá marcar um x.
Todas as vezes que alterar a célula A1, ele faz este procedimento:
- Encontra o valor na coluna H
- Marca um X na célula I (ao lado do valor encontrado)

Eu pensei em ter um inputBox para atribuir um valor na A1.

Obrigado

 
Postado : 03/03/2017 6:22 am
(@pfarias)
Posts: 0
New Member
 

Vê se lhe atende.

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)

    
    If Target.Address(False, False) = "A1" Then
    
            On Error Resume Next
            
                Dim Coluna  As Integer
                Dim Linha   As Long
                Dim TEXTO    As String
                
                Coluna = 8
                TEXTO = "MEU TEXTO"
                
                
                'se quiser limpar a coluna que é incluido o texto, só tirar a aspa simples do inicio do code abaixo
                'Sheets("Plan1").Columns(Coluna + 1).ClearContents
                
                
                Linha = Application.Match(Target.Value, Sheets("Plan1").Columns(8), 0)
            
            On Error GoTo 0
        
        
            If Linha <> 0 Then
            
                Plan1.Cells(Linha, Coluna + 1) = TEXTO
            
            End If
    
    End If

End Sub

 
Postado : 03/03/2017 7:01 am
(@hronconi)
Posts: 314
Reputable Member
 

Esta é a minha versão usando VBA.

 
Postado : 03/03/2017 7:24 am
(@_will_)
Posts: 0
New Member
Topic starter
 

Muito obrigado pela ajuda!

Resolvido.

 
Postado : 03/03/2017 8:12 am