Não entendi, o código que "achou" já faz isso (o descrito)
adaptado ao seu seria +/- assim
strArquivo = Application.GetOpenFilename("Arquivos de texto (*.txt),*.txt") '
Workbooks.OpenText Filename:=strArquivo, Origin:=xlMSDOS, _
StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 1), Array(6, _
1), Array(18, 1), Array(25, 1), Array(60, 1), Array(80, 1), Array(99, 1), Array(112, 1)), _
TrailingMinusNumbers:=True
Range("$B$15:$H$300").Select
......
Selecione o arquivo e veja oque ocorre.
Olá Reinaldo, bom dia!
Obrigado pela resposta.
Ao selecionar o arquivo rodou até certa parte.
Por favor, pode me tirar uma duvida?
Como fiz a macro no metodo de gravação, quando ela pega o txt e joga pro excel, ela gera uma sheets com o nome do txt usado na gravação, por exemplo nas linhas em negrito:
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
Range("$B$2").Select
ActiveSheet.Paste
Selection.SpecialCells(xlCellTypeBlanks).Select
Application.CutCopyMode = False
Selection.EntireRow.Delete
Sheets("teste2").Select
Range("$G$1").Select
Selection.Copy
Sheets("Plan1").Select
Range("$I$2").Select
ActiveSheet.Paste
Cells.Replace What:="aj", Replacement:="", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Selection.Value = Format(Selection, "dd/mm/yy")
Range("$B$2:$I$200").Select
Application.CutCopyMode = False
Selection.Copy
Windows("VBR.xlsm").Activate
Range("$C$52").Select
Selection.Insert Shift:=xlDown
Range("$C$52:$I$250").Select
Selection.SpecialCells(xlCellTypeBlanks).Select
Application.CutCopyMode = False
Selection.EntireRow.Delete
Range("K50").Select
Windows("teste2.txt").Activate
Sheets("Plan1").Select
ActiveWindow.Close False
Range("I6").Select
Tem com alterar essa parte para que a macro rode com qualquer txt selecionado?
Postado : 04/02/2014 6:35 am