Notifications
Clear all

EOF para ler arquivo Excel para outro arquivo Excel

2 Posts
2 Usuários
0 Reactions
700 Visualizações
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom dia!
Esta macro funciona para arquivo de texto.
Estou precisando de uma macro que faça o mesmo entre dois arquivos do Excel sem necessidade de abrir o arquivo de origem.

Sub TesteVáriasColunas()
    Dim Arquivo As String
    Dim Conteudo As String
    Dim AuxLin, AuxCol As Long
    Dim Delimitador As String
    Dim Vetor
    AuxLin = 1
    Delimitador = ";"
    Open "C:DadosPEN DRIVE ESCOLAS1EXCEL AVANÇADOCURSO EXCEL AVANÇADO – 40 HORAS - TABELA DINÂMICA - POWER QUERYCAPÍTULO II - ACESSO A BANCO DE DADOSPEDIDOS 1997.txt" For Input As #1
    Do While Not EOF(1)
        Line Input #1, Conteudo
        Vetor = Split(Conteudo, Delimitador)
        For AuxCol = LBound(Vetor) To UBound(Vetor)
            Planilha1.Cells(AuxLin, AuxCol + 1).Value = Vetor(AuxCol)
        Next AuxCol
        AuxLin = AuxLin + 1
    Loop
    Close #1
End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 13/04/2018 6:36 am
(@klarc28)
Posts: 971
Prominent Member
 

Para obter uma resposta, é necessário especificar quais são as planilhas de origem e destino e quais são as linhas e colunas de origem e destino. Se anexar os arquivos, obterá resposta mais rapidamente.

Função EOF

Retorna um inteiro que contém o valor boolianoTrue quando o final de um arquivo aberto para aleatório ou sequencial entrada foi atingido. Sintaxe EOF (filenumber) O argumento do necessário filenumber_ é um inteiro que contenham qualquer número de imposto de válido. Comentários Use EOF para evitar o erro gerado pelo tentar obter entrada passou do final de um arquivo. A função EOF retorna False até o final do arquivo foi atingido. Com arquivos abertos para acesso aleatório ou Binary , EOF retorna False até que a última executada a instrução Get é impossível ler um registro inteiro. Com arquivos abertos para acesso binário , uma tentativa de ler o arquivo com a função Input até EOF retornará True gerará um erro. Use as funções LOF e Loc em vez de EOF ao ler arquivos binários com entrada ou use obter ao usar a função EOF . Com arquivos abertos para saída, EOF sempre retorna True.

Quando enviar código, aperte o botão Code.

Tópicos relacionados:

http://www.planilhando.com.br/forum/search.php?keywords=copiar&fid%5B0%5D=10

Outros tópicos relacionados:

https://social.msdn.microsoft.com/Forums/pt-BR/home?forum=vbapt&filter=unanswered%2Cnoreplies&sort=relevancedesc&brandIgnore=True&filter=unanswered%2Cnoreplies&searchTerm=copiar

Sites relacionados:

https://www.google.com.br/search?q=vba+copiar+de+uma+pasta+para+outra&oq=vba+copiar+de+uma+pasta+para+outra&aqs=chrome..69i57.10839j0j7&sourceid=chrome&ie=UTF-8

Há vídeos que explicam como fazer:

https://www.youtube.com/results?search_query=vba+copiar+dados+de+uma+planilha+para+outra

Pelo Power Query é ainda mais fácil:

https://www.youtube.com/results?search_query=power+query

 
Postado : 15/04/2018 8:18 am