none
Vlookup VBA - Com uma matriz variável RRS feed

  • Pergunta

  • Pessoal, bom dia!

    Sou novo neste meio, e estou desenvolvi uma macro que possui duas funções:

    1° Criar uma base de informação extraída de um relatório que sai do sistema;

    2° Fazer um bate desta base com um relatório específico que possúimos.

    O fato é que, cada vez que gero "este processo", os dois arquivos vão mudar de nome (ex.: relatório do dia 01/05/2019, 02/05/2019 etc..).

    Como existe a necessidade do bate desta base com o relatório secundário, a base (MATRIZ) - vlookup(rc[-8],Matriz,c14,1,0) acaba sendo variável, pelo fato do nome do arquivo ser atralado a data atual. Tentei realizar o VLOOKUP no VBA deixando a base como variável, mas não consegui, vejam.

    'Nome do arquivo:

    Arquivo = "Base de Comissão " & [day(now()) &"."&month(now())]

    Range("f2").formular1c1 = "=iferror(vlookup(rc[-8],'\\Servidor1\BaseServidor1\BaseServidor2\BaseServidor3\Base da Macro\["+Arquivo.xlsm+"]Consolidado'!,c14,1,0),""Falta de Registro"")"

    Esta forma acima, achei em um fórum, mas ainda sim esta apresentando erro.

    Tentei também:

    Range("f2").formular1c1 = "=iferror(vlookup(rc[-8],'[Arquivo.xlsm]Consolidado'!,c14,1,0),""Falta de Registro"")"

    Ou:

    Range("f2").formular1c1 = "=iferror(vlookup(rc[-8],'["+Arquivo.xlsm+"]Consolidado'!,c14,1,0),""Falta de Registro"")"

    Ou também mudar o nome do arquivo:

    'Nome do arquivo:

    Arquivo = "Base de Comissão " & [day(now()) &"."&month(now())]&".xlsm"

    Range("f2").formular1c1 = "=iferror(vlookup(rc[-8],'[Arquivo]Consolidado'!,c14,1,0),""Falta de Registro"")"

    Espero que consigam entender e quem puder, me deem uma luz.

    quinta-feira, 22 de agosto de 2019 11:45