Não tenho conhecimento em VBA, mas elaborei uma macro a partir de soluções encontradas na WEB.
Concluí a macro e ao executar utilizando a tecla F8, ela funciona perfeitamente, porém ao executar a macro de forma automática ela trava.
A macro apenas abre um arquivo TXT, seleciona só as colunas necessárias, identifica a quantidade de linhas e copia os dados para outra planilha.
Nesta planilha, os dados são copiados para a célula D1. Depois disso copia fórmulas que estão na Plan2 para a Plan1, nas células A2:C2. Ai finalmente copia estas fórmulas para a quantidade de linhas identificadas no TXT e finalmente transforma as fórmulas em texto.
Não sei como posso enviar os arquivos, mas não tem nada de mais, então se alguém puder criar arquivos com os nomes inseridos na macro e testar não terá problemas
Segue a macro
Sub Novo()
Dim Linha As Long
' Exclui as linhas preenchidas do Arq Teste a partir da linha A3.
' Isso tem o objetivo de manter a fórmula das células A2:c2
Windows("Arq teste.xltm").Activate
Range("A3").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.EntireRow.Delete
' Selection.ClearContents
Range("d2").Select
'Faz a contagem de linhas e vai para uma linha abaixo
Windows("ABC_Vendas Dia.txt").Activate
Range("A1").Select
Linha = Range("C" & Rows.Count).End(xlUp).Row
' Seleciona os dados do arquivo TXT e copia
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.Copy
' Seleciona o arquivo fim e cola os dados do TXT
Windows("Arq teste.xltm").Activate
Range("D1").Select
ActiveSheet.Paste
Pergunta
Fernando Serra
Bom dia
Não tenho conhecimento em VBA, mas elaborei uma macro a partir de soluções encontradas na WEB.
Concluí a macro e ao executar utilizando a tecla F8, ela funciona perfeitamente, porém ao executar a macro de forma automática ela trava.
A macro apenas abre um arquivo TXT, seleciona só as colunas necessárias, identifica a quantidade de linhas e copia os dados para outra planilha.
Nesta planilha, os dados são copiados para a célula D1. Depois disso copia fórmulas que estão na Plan2 para a Plan1, nas células A2:C2. Ai finalmente copia estas fórmulas para a quantidade de linhas identificadas no TXT e finalmente transforma as fórmulas em texto.
Não sei como posso enviar os arquivos, mas não tem nada de mais, então se alguém puder criar arquivos com os nomes inseridos na macro e testar não terá problemas
Segue a macro
Sub Novo()
Dim Linha As Long
' Exclui as linhas preenchidas do Arq Teste a partir da linha A3.
' Isso tem o objetivo de manter a fórmula das células A2:c2
Windows("Arq teste.xltm").Activate
Range("A3").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.EntireRow.Delete
' Selection.ClearContents
Range("d2").Select
'Abre o arquivo texto selecionando apenas as colunas necessárias
ChDir "C:\Users\User\Dropbox"
Workbooks.OpenText Filename:="C:\Users\User\Dropbox\ABC_Vendas Dia.txt", _
Origin:=932, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, _
Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 9), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 9), Array(6, 9), Array(7, 9), Array(8, 1), _
Array(9, 9), Array(10, 9), Array(11, 9), Array(12, 9), Array(13, 1), Array(14, 9), Array(15 _
, 9), Array(16, 9), Array(17, 1), Array(18, 9), Array(19, 9), Array(20, 9), Array(21, 9), _
Array(22, 9), Array(23, 9), Array(24, 9), Array(25, 9), Array(26, 9), Array(27, 9), Array( _
28, 9), Array(29, 1), Array(30, 9), Array(31, 9), Array(32, 1), Array(33, 9), Array(34, 1), _
Array(35, 1), Array(36, 9), Array(37, 9), Array(38, 9), Array(39, 9), Array(40, 9), Array( _
41, 9), Array(42, 9), Array(43, 9), Array(44, 9), Array(45, 9), Array(46, 9), Array(47, 9), _
Array(48, 9), Array(49, 9), Array(50, 9), Array(51, 9), Array(52, 9), Array(53, 9), Array( _
54, 9), Array(55, 9), Array(56, 9), Array(57, 9)), TrailingMinusNumbers:=True
'Faz a contagem de linhas e vai para uma linha abaixo
Windows("ABC_Vendas Dia.txt").Activate
Range("A1").Select
Linha = Range("C" & Rows.Count).End(xlUp).Row
' Seleciona os dados do arquivo TXT e copia
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.Copy
' Seleciona o arquivo fim e cola os dados do TXT
Windows("Arq teste.xltm").Activate
Range("D1").Select
ActiveSheet.Paste
' Sheets("Plan1").Select
' Range("A2").Select
Sheets("Plan2").Select
Range("A2:C2").Select
Selection.Copy
Sheets("Plan1").Select
Range("A2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
' Range("A2").Select
Windows("ABC_Vendas Dia.txt").Activate
ActiveWorkbook.Close
Windows("Arq teste.xltm").Activate
' Marca as células que contém fórmulas e copia para as demais linhas da planilha
Range("A2:C2").Select
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("A2:C" & Linha)
Range("A2:C" & Linha).Select
' Range("A2:C2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
End Sub
Alguém pode me ajudar
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.