Ir ao conteúdo
  • Cadastre-se

abnlima2010

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Olá, é a primeira vez que pergunto algo aqui, portanto gostaria que me ajudassem se puderem por favor bom, tenho uma planilha, e eu gravei uma macro onde importo dados externos, localizo um diretório e importo uma planilha como tabela, até aí foi muito fácil porém, essa (a planilha importada) é uma planilha que é gerada todos os dias com o nome igual ao dia anterior (ex: hoje dia 01/07 a planilha chama-se: 30.xls, dia 25 a planilha chama-se 24.xls) e essas ficam em um diretório mais ou menos assim: relatorios/ano/mes/planilha.xls (ex: relatórios/2016/julho/31.xls). o que eu gostaria, é uma macro que buscasse o diretório em uma célula específica da planilha a qual terá essa outra importada como tabela,por exemplo: na célula A1, teria a função =hoje()-1, na A2: =TEXTO(A1;"mmmm"); e na A3: =TEXTO(A1;"aaaa") e na a4:=TEXTO(A1;"dd"), e na A5: Z:\PLANILHA_BETA\relatorio de estoque\ e finalmente uma ultima celula A6 com todas essas informações concatenadas formando o diretório. mas não sei nada de VBA, apenas gravo as macros,e queria que a macro buscasse a planilha no diretório da celula A6, que será atualizado todos os dias. bom, espero ter explixado bem, é difícil de expressar em palavras rsrs. aqui está a macro que gravei para uma planilha que faz a mesma coisa porém de um unico diretório específico Sub importa_estoque() ' ' importa_estoque Macro ' ' Sheets("Vendas de produtos").Select Range("A1").Select With ActiveSheet.ListObjects.Add(SourceType:=0, Source:=Array( _ "OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;Password="""";User ID=Admin;Data Source=Z:\PLANILHA_CASSIA_BETA\relatorio de estoque\CHEFWEB_-_R" _ , _ "001_-_Vendas_Produtos.xls;Mode=Share Deny Write;Extended Properties=""HDR=YES;"";Jet OLEDB:System database="""";Jet OLEDB:Registry P" _ , _ "ath="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk O" _ , _ "ps=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:En" _ , _ "crypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=F" _ , _ "alse;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False;Jet OLEDB:Limited DB Caching=False;Jet OLED" _ , "B:Bypass ChoiceField Validation=False"), Destination:=Range("$A$1")). _ QueryTable .CommandType = xlCmdTable .CommandText = Array("Sheet$") .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInfo = True .SourceDataFile = _ "Z:\PLANILHA_CASSIA_BETA\relatorio de estoque\CHEFWEB_-_R001_-_Vendas_Produtos.xls" .ListObject.DisplayName = "Tabela_CHEFWEB___R001___Vendas_Produtos" .Refresh BackgroundQuery:=False End With

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...