Olá, criei uma macro recentemente onde importo um arquivo txt para o excel, porém tenho vários desses txt onde os dados são diferentes. E nesses txt sempre vem com umas palavras, como titulos e descrição, eles tem um padrão que sempre vem em 8, porém podem acontecer de vir 8 linhas dessas palavras, um abaixo da outra tanto no inicio do txt quanto no final. Queria saber se é possivel fazer uma macro para que filtre esses dados e apague automaticamente na hora da importação?
OBS: Ele precisa localizar onde estão essas palavras e excluir, independente da célula que ela esteja.
Gostaria de filtrar essas palavras e apagar automaticamente:
"* AS - IMPL", "-----------", "BRB - BANCO", "C/C VINCULA", "ECC - SISTE", "i")
Segue minha macro onde importa os arquivos txt:
Sub lerTxt()
Dim sheet As Worksheet
Dim selecao As Variant
Dim i As Integer, linha As Integer
selecao = Application.GetOpenFilename(Filefilter:="Texto, *.txt", Title:="Selecione um arquivo", MultiSelect:=True)
If VarType(selecao) = vbBoolean Then Exit Sub 'Nenhum arquivo selecionado
'Se não for boolean, é uma array de strings com caminhos de arquivo.
' Aqui é que você tem que iterar, pois "selecao" contém uma array com caminhos de arquivo.
' Dentro de cada iteração, você faz aquilo que você já estava fazendo.
For i = 1 To UBound(selecao) Step 1
Open selecao(i) For Input As #1
Set sheet = ActiveWorkbook.Sheets.Add(After:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count))
linha = 1
Do Until EOF(1)
Line Input #1, valorLin
Cells(linha, 1).Value = valorLin
linha = linha + 1
Loop
Close #1
sheet.UsedRange.TextToColumns Other:=True
sheet.Columns().EntireColumn.AutoFit
Next i
End Sub