use uma lista suspensa para copiar os valores colados de uma tabela.

0

Eu tenho uma lista suspensa chamada Ted_ID que contém ID's Eu quero escrever o código VBA que diz que se um usuário seleciona um ID do menu suspenso, então ele vai olhar para a tabela e encontrar o Ted ID correspondente e copiar e colar o valor correspondente (nome da entidade corptax) para a direita em digamos coluna G.

tabela e lista suspensa

    
por Clarisa 18.01.2018 / 06:08

2 respostas

0

Eu gostaria de sugerir que o seguinte código do VBA irá ajudá-lo a inserir o ID de sua escolha no INPUTBOX e, em seguida, pesquisá-lo no intervalo de dados e copiá-lo para colar depois de algumas linhas.

Private Sub CommandButton1_Click()

Dim FirstAddress As String, cF As Range,RowsToCopy As String

ActiveSheet.Cells(186, 1).Activate

With ActiveSheet.Columns(1)

    Set cF = .Find(What:=InputBox("Enter ID Number", "Search ID"), _
                After:=ActiveCell, _
                LookIn:=xlFormulas, _
                LookAt:=xlPart, _
                SearchOrder:=xlByColumns, _
                SearchDirection:=xlNext, _
                MatchCase:=False, _
                SearchFormat:=False)


     If Not cF Is Nothing Then
        FirstAddress = cF.Address

        Do
               cF.EntireRow.Copy
               Sheets("Sheet1").Range("A" & Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row + 5).PasteSpecial xlPasteValues
               Set cF = .FindNext(cF)


            Loop While Not cF Is Nothing And cF.Address = FirstAddress

    End If
End With

End Sub

NB: Lembre-se de que o intervalo de dados é de A186 a D195. Você precisa alterar os seguintes valores no código VBA de acordo com seu intervalo de dados.

  1. Encontre 186 na terceira linha, (seu ROW número A186 ), substitua esta linha Nu por sua.

  2. Encontre na quarta linha .Column (1), representa a coluna A , altere-a conforme o valor da coluna inicial.

  3. Verifique a linha 17 & substitua o nome da planilha, se necessário, também o intervalo ("A" , substitua-o pelo seu intervalo de dados start Nome da coluna.

  4. No lugar do menu suspenso, usei o INPUTBOX, se você sentir que o substitui.

Nota, testei este código antes de publicá-lo aqui como Solução.

Eu acredito que você achou este código útil.

    
por 18.01.2018 / 12:47
0

Você consideraria uma solução não VBA?

Você precisa de uma lista de IDs do TED para sua lista suspensa e tem uma lista dos Nomes de entidade, para poder usá-los como uma tabela de pesquisa com VLOOKUP (). A fórmula na F3 da captura de tela abaixo é:

=VLOOKUP(D3,A2:B6,2)

    
por 18.01.2018 / 17:23