Pessoal estou importando um arquivo .txt e depois que ele faz a importação ele não consegue fechar a planilha que criou para importar conforme destaca a baixo, podem me ajudar?
Ele fala que o subscrito está fora de intervalo, acredito que ele não está reconhecendo.
Sub abrir_TXT(arquivo As String, ARQ_P As String)
Dim ARQ_S, PLANILHA As String
Workbooks.OpenText Filename:=arquivo, _
Origin:=xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:= _
Array(0, 2), TrailingMinusNumbers:=True
ARQ_S = ActiveWorkbook.Name
Columns("A:A").Select
Selection.Copy
Windows(ARQ_P).Activate
Sheets("Import.").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("Import.").Select
Sheets("Conciliar.").Select
Copiarecolar
Sheets("import.").Visible = False
Sheets("analise").Visible = False
Sheets("Conciliar.").Select
Range("A1").Select
ActiveWorkbook.Protect "041063"
Windows(ARQ_S).Activate
ActiveWindow.Close
End Sub
Sub indicar_arquivo()
Dim intChoice As Integer
Dim strPath, ARQ_P As String
ActiveWorkbook.Unprotect "041063"
Sheets("import.").Visible = True
Sheets("analise").Visible = True
With Application
.ScreenUpdating = False
End With
ARQ_P = ActiveWorkbook.Name
's? permite ao usu?rio selecionar um arquivo
Application.FileDialog(msoFileDialogOpen).AllowMultiSelect = False
'Remover todos os outros filtros
Call Application.FileDialog(msoFileDialogOpen).Filters.Clear
'Adicionar um filtro personalizado
Call Application.FileDialog(msoFileDialogOpen).Filters.Add( _
"Apenas TXT", "*.TXT")
'tornar a caixa de di?logo de arquivos vis?vel para o usu?rio
intChoice = Application.FileDialog(msoFileDialogOpen).Show
'determinar que escolha o usu?rio fez
If intChoice <> 0 Then
'obter o caminho do arquivo selecionado pelo usu?rio
strPath = Application.FileDialog( _
msoFileDialogOpen).SelectedItems(1)
Sheets("Import.").Select
Columns("A:A").Select
Selection.ClearContents
Range("A1").Select
Call abrir_TXT((strPath), (ARQ_P))
End If
With Application
.ScreenUpdating = True
End With
End Sub
Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Importação TXT
-
- Manda bem
- Mensagens: 127
- Registrado em: Sex Out 05, 2018 2:42 pm
-
- Acabou de chegar
- Mensagens: 8
- Registrado em: Sex Out 26, 2018 8:46 am
Re: Importação TXT
Boa tarde Julio,
Aqui funcionou normalmente, tem os arquivos que estão dando erro? Assim podemos avaliar os nomes das referencias.
Aqui funcionou normalmente, tem os arquivos que estão dando erro? Assim podemos avaliar os nomes das referencias.
-
- Manda bem
- Mensagens: 127
- Registrado em: Sex Out 05, 2018 2:42 pm
Re: Importação TXT
Olá Sr. Sisten.atc desde já agradeço seu retorno.
Então não consegui anexar o arquivo .txt aqui mas dentro do arquivo .txt que eu importo tem essas informações.
1000000000812018100040110000001600000000000
1000000000812018100150110000010270000000000
1000000000812018100151110000017000000000000
1000000000812018100025110000003220000000000
Eu importo e depois trabalho com os dados, o que o corre é que ao rodar a importação o excel abri uma planilha nova com o nome do arquivo e depois ela não consegue fechar essa planilha que abriu. Mas como você disse que funcionou eu já fico um pouco confuso, então eu mesclei e coloquei uma nova informação na programação que foi:
Windows(ARQ_S).Activate
Workbooks(ARQ_S).Close savechanges:=True
Então funcionou. você consegue me explicar o porque ? a diferença das duas programações?
Então não consegui anexar o arquivo .txt aqui mas dentro do arquivo .txt que eu importo tem essas informações.
1000000000812018100040110000001600000000000
1000000000812018100150110000010270000000000
1000000000812018100151110000017000000000000
1000000000812018100025110000003220000000000
Eu importo e depois trabalho com os dados, o que o corre é que ao rodar a importação o excel abri uma planilha nova com o nome do arquivo e depois ela não consegue fechar essa planilha que abriu. Mas como você disse que funcionou eu já fico um pouco confuso, então eu mesclei e coloquei uma nova informação na programação que foi:
Windows(ARQ_S).Activate
Workbooks(ARQ_S).Close savechanges:=True
Então funcionou. você consegue me explicar o porque ? a diferença das duas programações?