Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

JCB

exportar txt para tabela access

Recommended Posts

bom diasou meio novato na coisa e nem sei por onde começar. Tenho um txt como segue abaixo egostaria de anexar em uma tabela access 2006 via vb6 A tabela chamada "dados".No txt, o que começa com 010 seria o "header" dos dados, do 020 ao 060 seriam os camposde cada registro que começa com o 010na tabela dados tenho os campos: nome da empresa(header),Cliente(020),endereço(030)bairro(040),cidade/uf(050),despesas(060)010EMPRESA X ENDEREÇOX020JOAO DA SILVA030RUA 1 500040VILA NOVA050SAO PAULO SP060ALUGUEL060TELEFONE060LUZ060AGUA060DIVERSOS1060DIVERSOS2060DIVERSOS3020ANTONIO MIGUEL030RUA VALENTINA 100040VILA DOS REMEDIOS050SAO PAULO SP060ALUGUEL060TELEFONE060LUZ060AGUA060DIVERSOS1agradeceria muito a colaboraçãojoao carlos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, não entendi nada do que você fez ai em cima. Então vou dizer com eu costumo fazer, se der certo para o que vocês está fazendo, ótimo.A Primeira coisa é deixar os nomes das TextBox com os mesmos nomes das coluna, Por exemplo, para a Coluna 'Nome', procure reservar a TextBox 'txtNome', e assim por diante.PS: O que vou passar funcionar para conexões por ADO.

Option Explicitprivate cn as ADODB.connectionprivate rs as ADODB.recordsetprivate sub form_load()set cn = new adodb.connectioncn.openstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=nome do banco;Persist Security Info=False"cn.openset rs = new adodb.recordsetrs.open "Select * from exemplo", cn, adOpenKeyset, adLockOptimisticend subprivate sub command1()call atualizatabelaend subprivate sub AtualizaTabeldim ctlControle as controlfor each ctlControle in controls  if typeof ctlcontrole is textbox then    rs.fields(mid(ctlcontrole.name,4) = ctlcontrole.text  end ifnextend sub

Tenta isso, se tiver alguma dúvida posta ai...

Compartilhar este post


Link para o post
Compartilhar em outros sites

João Carlos, Faça o seguinte ...Você deverá realizar esta migração na mão, ja que existe uma formatação muito especifica para este arquivo texto.Você deverá abrir este arquivo e recupearar os dados linha a linha ...Vejamos:No txt, o que começa com 010 seria o "header" dos dados, do 020 ao 060 seriam os camposde cada registro que começa com o 010na tabela dados tenho os campos: nome da empresa(header),Cliente(020),endereço(030)bairro(040),cidade/uf(050),despesas(060)A formatação deste texto é :do caracter 1 até o caracter 3 -> O Identificador da Linha que pode ser do Caracter 4 até o ultimo Caracter da linha a informação ...."010-Header" ."020-Nome""030-Rua""040-Cidade""050-UF""060- Dados Diversos ...."De acordo com a lista abaixo, você deverá realizar um loop buscando cada uma dessas linhas, e verificar se os 3 primeiros caracteres são de indicadoresde um novo registro por exemplo , sempre que vier "020" significa que é um novo registro, porém você está com os dados do registro anterior, entao neste momento é hora de salvar os dados ........você vai ter que implementar uma logica, mais ou menos conforme eu falei acima Ok ? Boa sorte ...010EMPRESA X ENDEREÇOX020JOAO DA SILVA030RUA 1 500040VILA NOVA050SAO PAULO SP060ALUGUEL060TELEFONE060LUZ060AGUA060DIVERSOS1060DIVERSOS2060DIVERSOS3020ANTONIO MIGUEL030RUA VALENTINA 100040VILA DOS REMEDIOS050SAO PAULO SP060ALUGUEL060TELEFONE060LUZ060AGUA060DIVERSOS1

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom dia

sou meio novato na coisa e nem sei por onde começar. Tenho um txt como segue abaixo e

gostaria de anexar em uma tabela access 2006 via vb6

A tabela chamada "dados".

No txt, o que começa com 010 seria o "header" dos dados, do 020 ao 060 seriam os campos

de cada registro que começa com o 010

na tabela dados tenho os campos: nome da empresa(header),Cliente(020),endereço(030)

bairro(040),cidade/uf(050),despesas(060)

 

 

010EMPRESA X ENDEREÇOX

020JOAO DA SILVA

030RUA 1 500

040VILA NOVA

050SAO PAULO SP

060ALUGUEL

060TELEFONE

060LUZ

060AGUA

060DIVERSOS1

060DIVERSOS2

060DIVERSOS3

020ANTONIO MIGUEL

030RUA VALENTINA 100

040VILA DOS REMEDIOS

050SAO PAULO SP

060ALUGUEL

060TELEFONE

060LUZ

060AGUA

060DIVERSOS1

 

agradeceria muito a colaboração

joao carlos

Grande João Carlos!

 

Seguinte, meu velho: já passei por isso. Consegui resolver da seguinte forma:

 

Open *nomedoarquivo.txt* for input as #1

Do

LinhaEntrada = Line Input #1

if left(LinhaEntrada,3) = "010" then RS.Fields("Empresa") = right(LinhaEntrada,15)

if left(LinhaEntrada,3) = "020" then RS.Fields("Clientes") = right(LinhaEntrada,15)

...

If linhaentrada = " " then exit do

loop

 

Entendeu o esquema?

Cada vez que girar ele vai pegar uma linha, e aí vai tratando.

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.