none
Erro Application.WorksheetFunction.VLookup RRS feed

  • Pergunta

  • Olá, quando executo o seguinte código:

    Sub Gerar_arquivo() 'Abre pastas para buscar dados e gerar novo arquivo

    Dim fdial As FileDialog
    Dim wkMestre As Workbook
    Dim wkDados As Workbook
    Dim shtDados As Worksheet
    Dim shtMestre As Worksheet
    Dim areaDados As Range
    Dim areaMestre As Range
    Dim cell As Range
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    Set fdial = Application.FileDialog(msoFileDialogOpen)
    fdial.Show ' Seleção do Arquivo

    Set wkDados = Workbooks.Open(fdial.SelectedItems(1)) ' Define a planilha de dados a serem completados
    Set wkMestre = Workbooks.Open("C:\planilhateste\mestre.xlsx") ' Caminho chubado para a pasta de trabalho

    Set shtDados = wkDados.Sheets("report name") ' Planilha de origem dos dados
    Set shtMestre = wkMestre.Sheets("Normas") ' Planilha de origem dos dados a serem buscados
    Set areaDados = shtDados.Range("A2:A" & shtDados.Range("A650000").End(xlUp).Row) ' Define a area onde será inserida a coluna do PROCV
    Set areaMestre = shtMestre.Range("C2:G13360")
    shtDados.Range("C1").Value = "FUNÇÃO" ' Define o cabeçalho a coluna que será adicionada
    shtDados.Range("D1").Value = "LISTASERVICOS_CODIGO" ' Define o cabeçalho a coluna que será adicionada

    For Each cell In areaDados
            cell.Offset(0, 2).Value = Application.WorksheetFunction.VLookup(cell.Value, areaMestre, 3, False) 'ele entra dentro do "For Each" e executa, porém quando chega na última linha que não tem mais dados ele gera o erro
    Next cell

    For Each cell In areaDados
            cell.Offset(0, 3).Value = Application.WorksheetFunction.VLookup(cell.Value, areaMestre, 4, False)
    Next cell

    wkDados.SaveAs wkDados.Path & "\Novo arquivo-" & Format(Now, "ddmmyyhhmmss")
    wkDados.Close
    wkMestre.Close
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True

    End Sub

    É exibido o erro:

    Erro em tempo de execução '1004':

    Não é possível obter a propriedade VLookup da classe WorksheetFunction

    quinta-feira, 26 de setembro de 2019 21:32