Na verdade, precisaria de um arquivo texto colocar em um excel.
Então, achei melhor jogar em uma tabela MDB para facilitar os calculos que deverão ir para o excel.
Só que o texto não delimitado por espaços ou vigulas, é uma cópia dos recibos da empresa. Desta forma precisarei achar os campos dentro do texto, então gostaria de ler linha a linha.
Fiz o seguinte comando.:
Private Sub Command1_Click()
Dim s As String
Dim f As Integer
f = FreeFile 'Pega o numero do arquivo a ser aberto caso tenha mais de um arquivo aberto.
Open Text1.Text For Input As #f ' abre o arquivo
Text1.Text = ""
Do Until EOF(f)
Line Input #f, s
Text2.Text = Text1.Text + s
Loop
Close #f ' fecha o arquivo
'ls_Grava
End Sub
Mas ele traz como se fosse apenas uma linha, abri o arquivo em um editor de texto Editplus e nele aparece várias linha com a quebra de linha com o chr(13) Enter, o VB esta entendendo apenas uma linha. Desta forma fica complicado pegar o que preciso.
Neste excemplo preciso pegar apenas o Setor e colocar 9 na minha tabela, e ai por diante.
Amigos, não sei se consegui me expressar corretamente.
Não dever passar apenas uma vez no laço e retornando no text2 o texto completo, preciso que ele monte linha a linha.
linha 1 = +----------------------------------------------------------------------------------------------+
linha 2 = | Folha de Pagamento 03/02/2012 11:58:15 |
linha 3 = +----------------------------------------------------------------------------------------------+
linha 4 = | Setor: 9 - RETIFICA |
E desta forma eu possa quando no laço passar a linha 4 eu pegar na posição logo após a palavra Setor, pegue o numero 9 e grave na tabela mdb, e assim por diante.
Pergunta
wet
Olá amigos bom dia.
Preciso de um help.
Na verdade, precisaria de um arquivo texto colocar em um excel.
Então, achei melhor jogar em uma tabela MDB para facilitar os calculos que deverão ir para o excel.
Só que o texto não delimitado por espaços ou vigulas, é uma cópia dos recibos da empresa. Desta forma precisarei achar os campos dentro do texto, então gostaria de ler linha a linha.
Fiz o seguinte comando.:
Private Sub Command1_Click()
Dim s As String
Dim f As Integer
f = FreeFile 'Pega o numero do arquivo a ser aberto caso tenha mais de um arquivo aberto.
Open Text1.Text For Input As #f ' abre o arquivo
Text1.Text = ""
Do Until EOF(f)
Line Input #f, s
Text2.Text = Text1.Text + s
Loop
Close #f ' fecha o arquivo
'ls_Grava
End Sub
Mas ele traz como se fosse apenas uma linha, abri o arquivo em um editor de texto Editplus e nele aparece várias linha com a quebra de linha com o chr(13) Enter, o VB esta entendendo apenas uma linha. Desta forma fica complicado pegar o que preciso.
Veja parte do arquivo como aparece.
+--------------------------------------------------------------------------------------------------------------------+
| Folha de Pagamento 03/02/2012 11:58:15 |
| Apelido: 02 Razao Social: XXXXXXXXXXXXXXXXXXXXX Pag:1|
|---------------------------------------------------------------------------------------------------------------------|
| C.N.P.J./CEI:XXXXXXXXXXX Inscricao: xxxxxx Periodo de: 01/01/2012 a 31/01/2012|
| Endereco:xxxxxxxxxxxxxxxxxx Bairro:xxxxxxxxxxxxxxx Cidade:xxxxxxxxxxxxxxxx UF: SP |
+--------------------------------------------------------------------------------------------------------------------+
+--------------------------------------------------------------------------------------------------------------------+
| Setor: 9 - RETIFICA |
+---------------------------------------------------------------------------------------------------------------------+
Neste excemplo preciso pegar apenas o Setor e colocar 9 na minha tabela, e ai por diante.
Amigos, não sei se consegui me expressar corretamente.
Não dever passar apenas uma vez no laço e retornando no text2 o texto completo, preciso que ele monte linha a linha.
linha 1 = +----------------------------------------------------------------------------------------------+
linha 2 = | Folha de Pagamento 03/02/2012 11:58:15 |
linha 3 = +----------------------------------------------------------------------------------------------+
linha 4 = | Setor: 9 - RETIFICA |
E desta forma eu possa quando no laço passar a linha 4 eu pegar na posição logo após a palavra Setor, pegue o numero 9 e grave na tabela mdb, e assim por diante.
obrigado a todos.
Link para o comentário
Compartilhar em outros sites
1 resposta 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.