Ignora a confirmação de seleção de arquivo do Excel para conexão de dados com arquivo de texto não .txt

2

Eu tenho uma pasta de trabalho do Excel que processa a saída do modelo de outro programa. Esse programa produz arquivos de saída de texto sem formatação delimitados por espaço com uma extensão ".plt" . Eu tenho uma conexão de dados no Excel para trazer esses dados, mas requer mais cliques do que eu gostaria. Atualmente, o fluxo de trabalho é este:

  1. Executar outro modelo.
  2. No Excel, clique em Data- > Atualizar tudo
  3. Na caixa de diálogo do arquivo que é aberta, clique em "Arquivos de texto (* .prn, * .txt, * .csv)"
  4. Pull Down aparece - clique em: "Todos os arquivos (*. *)" .
  5. Selecione o nome do arquivo da lista (o nome do arquivo nunca muda - Sempre "Output.plt" )
  6. Selecione "Importar".

A partir daqui, lembre-se de todas as configurações para a conexão de dados - locais, texto para colunas, etc. Como o nome do meu arquivo nunca muda, porém, eu gostaria que lembrasse o nome do meu arquivo, então eu teria apenas um ou dois cliques, em vez de 5.

Eu tentei gravar uma macro, passando por todas essas etapas, mas a única parte que apareceu no VBA é ActiveWorkbook.RefreshAll

    
por Adam 13.07.2015 / 23:38

2 respostas

2

Existe uma opção para solicitar o nome do arquivo.

Vá para Dados / Conexões, escolha sua conexão, clique em propriedades.

Na seção de controle de atualização, na guia Uso, desmarque a caixa de seleção "prompt para o nome do arquivo na atualização"

    
por 15.07.2015 / 04:54
0
Dim File_Path As String
File_path=" C:\Users\owner\John\Output.plt"
Open File_Path for Input as #1
row_num= 5
Do until EOF(1)
Line Input #1, Line_FromFile
Line_Items = Split(Line_FromFile, ",")
Range("C"&row_num).Value = Line_Items(2)
Range("B"&row_num).Value = Line_Items(1)
Range("A"&row_num).Value = Line_Items(0)
row_num = row_num + 1
Loop
Close #1
    
por 15.07.2015 / 02:45