Você está na página 1de 2

Sub GeraTxt()

'Identifica o caminho onde est e ser salvo exemplo: C:\Desktop\


Caminho = ThisWorkbook.Path & Application.PathSeparator
'Determina o nome do arquivo a ser salvo
Arquivo = "remarkstxt.txt"
'"abre" o arquivo txt para gravao dos dados
Open Caminho & Arquivo For Output As #1

'Posiciona-se na planilha chamada "Export"


Worksheets("Export").Activate
Range("A1").Select
'Linha de inicio dos dados ( a 1 so os cabecalhos)
linha = 2
'Inicio do loop, executa atelinha vazia.
Do Until IsEmpty(ActiveCell.Offset(0, 0))
'Preparao dos campos a serem exportados,
'Exemplo:= Cpo1= valor de A1 concatenado com valor indicado em i10, repetido pela
quantidade informada em H5 menos tamanho de A1
Cpo1 = Cells(linha, 1) & Application.WorksheetFunction.Rept(Cells(10, 9),
Cells(5, 8) - Len(Cells(linha, 1)))

Cpo2 = Cells(linha, 2) & Application.WorksheetFunction.Rept(Cells(10, 9),


Cells(6, 8) - Len(Cells(linha, 2)))

Cpo3 = Cells(linha, 3) & Application.WorksheetFunction.Rept(Cells(10, 9),


Cells(7, 8) - Len(Cells(linha, 3)))

Cpo4 = Cells(linha, 4) & Application.WorksheetFunction.Rept(Cells(10, 9),


Cells(8, 8) - Len(Cells(linha, 4)))
'Concatena os dados j arrumados
Dados = Cpo1 & Cpo2 & Cpo3 & Cpo4
'Grava o valor em dados no arquivo txt
Print #1, Dados
linha = linha + 1
If Cells(linha, 1) = Empty Then Exit Do
Loop
fecha o arquivo txt
Close #1

End Sub

*********************************************************

Sub GeraTxt()
'Identifica o caminho onde est e ser salvo exemplo: C:\Desktop\
Caminho = ThisWorkbook.Path & Application.PathSeparator
'Determina o nome do arquivo a ser salvo
arquivo = "Exportar_Excel_pTxt.txt"
'"abre" o arquivo txt para gravao dos dados
Open Caminho & arquivo For Output As #1

'variavel com 5 espaos usado para alguns preenchimentos


espaco = " "
'variavel com 0 usado para alguns preenchimentos
zero = "0"
'variavel com usado para tpico
ponto = " "
'Posiciona-se na planilha chamada "Export"
Worksheets("WorkCell").Activate
Range("N10").Select
'Linha de inicio dos dados ( n 10 so os cabecalhos)
linha = 10
'Inicio do loop, executa atelinha vazia.
Do Until IsEmpty(ActiveCell.Offset(1, 0))
'Preparao dos campos a serem exportados,
'Para que os valores alterem necessario que linha ou coluna se alterem
Cpo1 = Cells(linha, 10)
Cpo2 = Cells(linha, 11)
Cpo3 = Cells(linha, 12)
Cpo4 = Cells(linha, 13)
Cpo5 = Cells(linha, 14)
'Concatena os dados j arrumados
Dados = ponto & Cpo1 & espaco & Cpo2 & espaco & zero & espaco & espaco & Cpo3 &
espaco & Cpo4 & Cpo5
ou 'se for utilizar esta maeneira as linhas das variaveis Cpo podem se excluidas
Dados = Cells(linha, 1) & espaco & Cells(linha, 2) & espaco & zero & espaco &
espaco & Cells(linha, 3) & espaco & Cells(linha, 4) & Cells(linha, 5)
'Grava o valor em dados no arquivo txt
Print #1, Dados
'Incrementa 1 a variavel linha, para que se desloque ao proximo registro
linha = linha + 1
If Cells(linha, 1) = Empty Then Exit Do
Loop
'fecha o arquivo txt
Close #1
End Sub

***********************************************************

Você também pode gostar