Gravar arquivo de texto no Excel VBA

Todos nos deparamos com esse tipo de situação em que tivemos que colocar grandes dados em arquivos do Excel, mas, eventualmente, enfrentamos a situação em que o tamanho desse arquivo com grandes dados aumentou tanto que tivemos que convertê-los em texto Arquivo. Devido a isso, não pudemos trabalhar nesse arquivo nem salvá-lo no formato Excel. Esse tipo de situação já vimos em muitos projetos em que precisamos extrair os dados do banco de dados. A extração dos dados do banco de dados é possível se você usar o arquivo de texto para esse fim. O arquivo de texto não é interrompido e podemos armazenar o máximo de dados e tabelas em um único arquivo de texto sem travar o arquivo. Para isso, precisamos converter o arquivo do Excel em um arquivo de texto. Embora não seja uma tarefa grande para quando é uma atividade repetitiva e pode levar muito tempo para ser realizada.

Para evitar isso, temos um processo no VBA, com isso, podemos converter o arquivo do Excel em um arquivo de texto sem prejudicar os dados. Com isso, podemos salvar um grande conjunto de dados no arquivo de texto, reduzindo e compactando também o tamanho do arquivo.

A compreensão do código VBA de gravação do arquivo de texto é bastante complexa, mas não é difícil de entender.

Processo seguido:

  • Caminho do arquivo: Colocando o caminho do arquivo em que mantivemos o arquivo do Excel.
  • Modo: Para qual finalidade, precisamos abrir o arquivo. Pode ser o modo somente leitura ou a finalidade de gravação ou precisamos usá-lo para anexar os dados.
  • Número do arquivo: com isso, podemos contar o tempo que usamos no arquivo excel para um arquivo de texto.

Como escrever um arquivo de texto no Excel VBA?

Vamos aprender como escrever um arquivo de texto usando o código VBA no Excel com alguns exemplos.

Você pode baixar este modelo de Excel para arquivo de texto de gravação do VBA aqui - Modelo de Excel para arquivo de texto de gravação do VBA

Exemplo # 1 - Arquivo de texto de gravação VBA

Neste exemplo, veremos como mapear o local do arquivo com o código VBA para escrevê-lo no formato de arquivo de texto. Para isso, precisamos de um módulo.

Etapa 1: Vá para a opção de menu Inserir e selecione Módulo como mostrado abaixo.

Etapa 2: agora, no módulo aberto, escreva a subcategoria de texto de gravação do VBA ou podemos escolher qualquer nome conforme nossa escolha.

Código:

 Sub WriteTextFile2 () End Sub 

Etapa 3: na primeira etapa da codificação, declare a variável myFile como String, como mostrado abaixo.

Código:

 Sub WriteTextFile2 () Dim myFile As String End Sub 

Etapa 4: na variável atribuída, coloque o local do arquivo que precisamos converter do Excel para o Texto. Aqui, denominamos esse arquivo como Teste com a extensão txt como mostrado abaixo.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ Arquivo VPB \ Arquivos de abril \ Localização final \ Final Input.txt" End Sub 

Etapa 5: Como vimos na descrição do arquivo de texto de gravação do VBA, primeiro abriremos o arquivo do Excel e anexaremos os dados do Excel a um arquivo de texto com a linha de comando abaixo.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ Arquivo VPB \ Arquivos de abril \ Localização final \ Final Input.txt" Abra o myFile para acrescentar como nº 1 End Sub 

Etapa 6: Agora, vamos colocar um texto em um arquivo de texto que gostaríamos de ver como mostrado abaixo com a ajuda da gravação nº 1 da primeira tabela. Introduzimos algumas marcas de automóveis aleatórias com nome e especificações do modelo.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ Arquivo VPB \ Arquivos de abril \ Localização final \ Final Input.txt" Abra o myFile para acrescentar como # 1 Escreva # 1, "Ford", "Figo", 1000, " milhas ", 2000 Escreva # 1, " Toyota ", " Etios ", 2000, " milhas ", End Sub 

Etapa 7: Agora feche a primeira tabela como mostrado abaixo.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ Arquivo VPB \ Arquivos de abril \ Localização final \ Final Input.txt" Abra o myFile para acrescentar como # 1 Escreva # 1, "Ford", "Figo", 1000, " milhas ", gravação de 2000 nº 1, " Toyota ", " Etios ", 2000, " milhas ", fechamento nº 1 End Sub 

Etapa 8: também gostaríamos de ver a mensagem assim que o processo estiver concluído.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ Arquivo VPB \ Arquivos de abril \ Localização final \ Final Input.txt" Abra o myFile para acrescentar como # 1 Escreva # 1, "Ford", "Figo", 1000, " miles ", 2000 Write # 1, " Toyota ", " Etios ", 2000, " miles ", Fechar # 1 MsgBox" Saved "End Sub 

Etapa 9: Agora compile o código e execute-o clicando no botão Reproduzir, localizado abaixo da barra de menus, como mostrado abaixo. Se nenhum erro for encontrado, obteremos a caixa de mensagem com a mensagem como Salvo, como mostrado abaixo.

Etapa 10: Agora vá para o local que mencionamos no código acima, veremos o arquivo de texto com o nome Teste, como mostrado abaixo.

Agora, para verificar se esse arquivo de texto possui os mesmos dados que inserimos no VBA, abra-o. Veremos os mesmos dados foram inseridos.

Exemplo # 2 - Arquivo de texto de gravação VBA

Existe outro caminho para o mesmo trabalho.

Etapa 1: No exemplo, usaremos o mesmo código que escrevemos acima, mas haveria uma pequena alteração no código usado. Vamos considerar o mesmo código como mostrado no exemplo-1.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = Open myFile For Anexar como # 1 Write # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, "Toyota", "Etios", 2000, "milhas", fechar # 1 MsgBox "Salvo" End Sub 

Etapa 2: agora no lugar do local do arquivo, selecione a pasta de trabalho ativa com o ActiveWorkbook, como mostrado abaixo.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook. Abra o myFile para acrescentar como # 1 Write # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, "Toyota", "Etios", 2000, "miles", Fechar # 1 MsgBox "Salvo "End Sub 

Etapa 3: Agora selecione o caminho na lista suspensa do ActiveWorkBook .

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook.Path Abra o myFile para anexar como # 1 Escreva # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, "Toyota", "Etios", 2000, "milhas", fechar # 1 MsgBox "Salvo" End Sub 

Etapa 4: selecione o caminho em que precisamos anexar os dados no arquivo de texto, separado por um e comercial.

Código:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook.Path & "\ VPB File" Abrir o myFile para acrescentar como nº 1 Escreva # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, " Toyota ", " Etios ", 2000, " milhas ", Fechar # 1 MsgBox" Saved "End Sub 

Etapa 5: Agora compile novamente o código e execute-o depois disso. Na conclusão bem-sucedida da execução, receberemos a mensagem como Salvo .

Agora, novamente, vá para o caminho em que mantemos esse arquivo que está tendo o código e verifique se o arquivo de texto está salvo lá ou não.

Agora abra o arquivo para verificar se os dados estão anexados corretamente ou não. Veremos que os dados são anexados da mesma maneira que aconteceu no exemplo-1.

Prós do arquivo de texto de gravação do Excel VBA

  • Nem precisamos abrir nenhum arquivo para anexar os dados.
  • Se os dados forem enormes, podemos anexar os dados do Excel ao Texto sem abrir o arquivo. Portanto, não há problema em lidar com o arquivo também.
  • Se seguirmos o processo compartilhado no exemplo-2, nem precisamos dar o caminho para o qual queremos ver o arquivo de texto de saída.

Coisas para lembrar

  • No processo mostrado no exemplo-1, podemos colocar o arquivo no local em que queremos ver a saída.
  • No processo mostrado no exemplo-2, ele considerará automaticamente o local do arquivo que possui o código VBA do VBA Write Text File.
  • Podemos até selecionar os dados de qualquer arquivo do Excel que desejamos converter no arquivo de texto.
  • Podemos selecionar e criar tantas como uma tabela que queremos acrescentar no arquivo de texto.

Artigos recomendados

Este é um guia para o arquivo de texto de gravação do VBA. Aqui discutimos como escrever um arquivo de texto no Excel usando o código VBA, além de exemplos práticos e modelo de excel para download. Você também pode consultar nossos outros artigos sugeridos -

  1. VBA InStr explicado com exemplos
  2. Tipo de dados inteiro VBA
  3. VBA ISNULL explicado com exemplos
  4. Transpor um intervalo no VBA

Categoria: