Página 1 de 1

[AJUDA ] Macro para abrir .txt e copiar alguns caracteres

Enviado: 03 Jun 2019 às 13:38
por GIH
Olá a todos!

Tenho em mãos um trabalho que exige abrir uma lista extensa de ficheiros do tipo .txt , um a um, para copiar e colar numa folha excel um trecho de caracteres de cada um dos ficheiros. O meu objetivo seria:

Abrir automaticamente cada um desses ficheiros .txt e extrair/copiar um conjunto pequeno de caracteres, cuja estrutura é sempre igual de ficheiro para ficheiro, bem como o seu posicionamento - aparece sempre na primeira linha do .txt:

Exemplo de um dos ficheiros .txt:

0100 16010059#
03000001#
04090117#
05100117#
06PORTO #
07VILA NOVA DE GAIA #
08Mafamude #
10AV. DA REPÚBLICA #
111892 #
12#
6120#
70 #
71 #
139ºD #


Por fim, importar/colar esses caracteres para uma folha excel.

Conseguem ajudar?

Obrigada desde ja!

Re: [AJUDA ] Macro para abrir .txt e copiar alguns caractere

Enviado: 03 Jun 2019 às 18:17
por mucascosta
Veja se ajuda:

Public Sub ImportarTexto()
Dim Ficheiro As String
Ficheiro = "C:\Diretório do arquivo\Nome do arquivo.txt"
Dim rg As Range
Set rg = Range("A1")
Open Ficheiro For Input As #1
Dim S As String, N As Integer, X As Variant
Line Input #1, S
X = Split(S, " ")
rg.Offset(0, N) = X(N) & " " & X(N + 1)
Close #1
End Sub

[AJUDA ] Macro para abrir .txt e copiar alguns caracteres

Enviado: 04 Jun 2019 às 05:59
por GIH
Obrigado pela ajuda.
Adaptei o código que sugeriu mas agora dá-me um "run time error '53' : file not found":

Sub Dados_Itinerarios()

Dim filepath As Integer
Dim caminhofilepath As String
Dim texto As String
Dim linhaTexto As String
Dim ID_itinerario As String

filepath = FreeFile
caminhofilepath = "\\XYZ\Backup 2017\filepath.txt"

Open caminhofilepath For Input As #1

Do Until EOF(1)

Line Input #1, linhaTexto

texto = texto & linhaTexto

Loop

Close #1

ID_itinerario = InStr(texto, "0100")


Range("A1").Value = Mid(texto, ID_itinerario + 4, 10)


End Sub


Já experimentei colocar "Open caminhofilepath For Input As filepath" mas também não dá...
Consegue ajudar a resolver?

Re: [AJUDA ] Macro para abrir .txt e copiar alguns caractere

Enviado: 04 Jun 2019 às 11:06
por mucascosta
Acho que é aqui: caminhofilepath = "\\XYZ\Backup 2017\filepath.txt"

Por exemplo: caminhofilepath = "C:\XYZ\Backup 2017\filepath.txt" 'Altere a letra cfe. local...