Olá!
Preciso de ajuda/orientação a importar dados de um ficheiro TXT divididos por "|" para tabela em ACCESS.
Os dados no ficheiro TXT aparecem da seguinte forma:
FRANCISCO AUGUSTO SOBRAL
97743|JUNCAL|A|0.0.S|0,2208|0,2208|0,0000|0,0000
97763|JUNCAL|B|0.0.S|0,5704|0,5704|0,0000|0,0000
97764|JUNCAL|B|0.0.S|0,3168|0,3168|0,0000|0,0000
97765|JUNCAL|B|0.0.S|1,2020|1,2020|0,0000|0,0000
97766|JUNCAL|B|0.3.S|0,5266|0,0000|0,0000|0,0000
97767|JUNCAL|B|0.3.S|0,6179|0,0000|0,0000|0,0000
149587|JUNCAL|A|0.17.S|0,0267|0,0000|0,0000|0,0000
98656|JUNCAL DE BAIXO|B|0.3.S|0,4261|0,0000|0,0000|0,0000
159027|MURO DA URSULA|A|0.0.S|0,8507|0,8507|0,0000|0,0000
97759|QUEBRADA|B|0.0.S|0,0786|0,0786|0,0000|0,0000
97760|QUEBRADA|A|0.0.S|0,0708|0,0708|0,0000|0,0000
97761|QUEBRADA|A|0.0.S|1,5728|1,5728|0,0000|0,3771
97837|QUEBRADA|A|0.0.S|0,0245|0,0245|0,0000|0,0000
97838|QUEBRADA|A|0.3.S|0,1122|0,0000|0,0000|0,0000
JOSÉ ANJOS FERNANDES SILVA
96138|OUTEIRO|A|0.0.S|0,0528|0,0528|0,0012|0,0000
149357|OUTEIRO|A|0.17.S|0,0084|0,0000|0,0000|0,0000
MANUEL ANTÓNIO HELENA
97352|QUEBRADA|A|0.0.S|0,3458|0,3458|0,0014|0,0000
97619|VALE ERVEDOSA OU TESTEMUNHAS|A|0.1.S|0,1099|0,1099|0,0000|0,0000
97620|VALE ERVEDOSA OU TESTEMUNHAS|A|0.1.S|0,1841|0,1841|0,0000|0,0000
MARIA MARGARIDA MACEDO PINTO
96147|CARVALHEIRA OU CORDEIRA|A|0.0.S|0,3756|0,3756|0,0000|0,0000
96148|CARVALHEIRA OU CORDEIRA|A|0.0.S|0,4720|0,4720|0,0000|0,0000
160292|CORDEIRA|A|0.0.S|0,1286|0,1286|0,0000|0,0000
160293|CORDEIRA|A|0.0.S|0,8981|0,8981|0,0000|0,0000
160294|CORDEIRA|A|0.0.S|2,3772|2,3772|0,0000|0,0000
96194|CORDEIRA OU CARVALHEIRA|A|0.0.S|1,0924|1,0924|0,0000|0,0000
155959|CORDEIRA OU CARVALHEIRA|A|0.0.S|0,7412|0,7412|0,0000|0,0000
155960|CORDEIRA OU CARVALHEIRA|A|0.0.S|0,7128|0,7128|0,0036|0,1541
155961|CORDEIRA OU CARVALHEIRA|A|0.1.S|0,1785|0,1785|0,0000|0,0000
155962|CORDEIRA OU CARVALHEIRA|A|0.1.S|0,1750|0,1750|0,0000|0,1409
159304|MOGADOURO|A|0.0.S|0,6822|0,6822|0,0000|0,0000
96098|OUTEIRO|A|0.0.S|0,7861|0,7861|0,0000|0,0000
96099|OUTEIRO|A|0.3.S|0,3686|0,0000|0,0000|0,0000
149353|OUTEIRO|A|0.17.S|0,0080|0,0000|0,0000|0,0000
96095|SAPA|A|0.0.S|0,1512|0,1512|0,0000|0,0000
96096|SAPA|A|0.3.S|0,5554|0,0000|0,0000|0,0000
137177|SAPA|A|0.0.S|1,1446|1,1446|0,0000|0,0000
137178|SAPA|A|0.6.S|0,0000|1,0078|0,0000|0,0000
149352|SAPA|A|0.17.S|0,2219|0,0000|0,0000|0,0000
ANTÓNIO ADOLFO PINTO BALDAIA
98405|ALAMOS|B|0.0.S|0,0695|0,0695|0,0056|0,0000
98406|ALAMOS|C|0.0.S|0,1750|0,1750|0,0000|0,0000
98407|ALAMOS|B|0.0.S|1,8851|1,8851|0,0000|0,3022
JOSÉ ANTÓNIO MONTEIRO CORDEIRO
102154|CHAO DA PEREIRA|A|0.0.S|0,1534|0,1534|0,0030|0,0000
JORGE MANUEL DUARTE
102401|MERUGE|A|0.0.S|1,0069|1,0069|0,0000|0,0000
102443|MERUGE|A|0.2.S|4,0655|4,0655|0,0000|0,0000
Ou seja aparece o NOME e depois a seguir ao nome aparecem os vários registos que pertencem a esse NOME.
Pegando no último nome que aparece:
JORGE MANUEL DUARTE
102401|MERUGE|A|0.0.S|1,0069|1,0069|0,0000|0,0000
102443|MERUGE|A|0.2.S|4,0655|4,0655|0,0000|0,0000
Eu preciso de um código que me importe para tabela da seguinte forma:
JORGE MANUEL DUARTE|102401|MERUGE|A|0.0.S|1,0069|1,0069|0,0000|0,0000
JORGE MANUEL DUARTE|102443|MERUGE|A|0.2.S|4,0655|4,0655|0,0000|0,0000
Eu já tenho um código que utilizava para importar dados de um ficheiro TXT para tabela ACCESS por posição... mas agora preciso de um código que importe através da barra "|".
O que eu preciso é ajuda a importar texto dividido por "|", porque acho que com este código que tenho adicionando a condição para importar até encontrar "|" consigo fazer o que pretendo.
Obrigado em avanço
Preciso de ajuda/orientação a importar dados de um ficheiro TXT divididos por "|" para tabela em ACCESS.
Os dados no ficheiro TXT aparecem da seguinte forma:
FRANCISCO AUGUSTO SOBRAL
97743|JUNCAL|A|0.0.S|0,2208|0,2208|0,0000|0,0000
97763|JUNCAL|B|0.0.S|0,5704|0,5704|0,0000|0,0000
97764|JUNCAL|B|0.0.S|0,3168|0,3168|0,0000|0,0000
97765|JUNCAL|B|0.0.S|1,2020|1,2020|0,0000|0,0000
97766|JUNCAL|B|0.3.S|0,5266|0,0000|0,0000|0,0000
97767|JUNCAL|B|0.3.S|0,6179|0,0000|0,0000|0,0000
149587|JUNCAL|A|0.17.S|0,0267|0,0000|0,0000|0,0000
98656|JUNCAL DE BAIXO|B|0.3.S|0,4261|0,0000|0,0000|0,0000
159027|MURO DA URSULA|A|0.0.S|0,8507|0,8507|0,0000|0,0000
97759|QUEBRADA|B|0.0.S|0,0786|0,0786|0,0000|0,0000
97760|QUEBRADA|A|0.0.S|0,0708|0,0708|0,0000|0,0000
97761|QUEBRADA|A|0.0.S|1,5728|1,5728|0,0000|0,3771
97837|QUEBRADA|A|0.0.S|0,0245|0,0245|0,0000|0,0000
97838|QUEBRADA|A|0.3.S|0,1122|0,0000|0,0000|0,0000
JOSÉ ANJOS FERNANDES SILVA
96138|OUTEIRO|A|0.0.S|0,0528|0,0528|0,0012|0,0000
149357|OUTEIRO|A|0.17.S|0,0084|0,0000|0,0000|0,0000
MANUEL ANTÓNIO HELENA
97352|QUEBRADA|A|0.0.S|0,3458|0,3458|0,0014|0,0000
97619|VALE ERVEDOSA OU TESTEMUNHAS|A|0.1.S|0,1099|0,1099|0,0000|0,0000
97620|VALE ERVEDOSA OU TESTEMUNHAS|A|0.1.S|0,1841|0,1841|0,0000|0,0000
MARIA MARGARIDA MACEDO PINTO
96147|CARVALHEIRA OU CORDEIRA|A|0.0.S|0,3756|0,3756|0,0000|0,0000
96148|CARVALHEIRA OU CORDEIRA|A|0.0.S|0,4720|0,4720|0,0000|0,0000
160292|CORDEIRA|A|0.0.S|0,1286|0,1286|0,0000|0,0000
160293|CORDEIRA|A|0.0.S|0,8981|0,8981|0,0000|0,0000
160294|CORDEIRA|A|0.0.S|2,3772|2,3772|0,0000|0,0000
96194|CORDEIRA OU CARVALHEIRA|A|0.0.S|1,0924|1,0924|0,0000|0,0000
155959|CORDEIRA OU CARVALHEIRA|A|0.0.S|0,7412|0,7412|0,0000|0,0000
155960|CORDEIRA OU CARVALHEIRA|A|0.0.S|0,7128|0,7128|0,0036|0,1541
155961|CORDEIRA OU CARVALHEIRA|A|0.1.S|0,1785|0,1785|0,0000|0,0000
155962|CORDEIRA OU CARVALHEIRA|A|0.1.S|0,1750|0,1750|0,0000|0,1409
159304|MOGADOURO|A|0.0.S|0,6822|0,6822|0,0000|0,0000
96098|OUTEIRO|A|0.0.S|0,7861|0,7861|0,0000|0,0000
96099|OUTEIRO|A|0.3.S|0,3686|0,0000|0,0000|0,0000
149353|OUTEIRO|A|0.17.S|0,0080|0,0000|0,0000|0,0000
96095|SAPA|A|0.0.S|0,1512|0,1512|0,0000|0,0000
96096|SAPA|A|0.3.S|0,5554|0,0000|0,0000|0,0000
137177|SAPA|A|0.0.S|1,1446|1,1446|0,0000|0,0000
137178|SAPA|A|0.6.S|0,0000|1,0078|0,0000|0,0000
149352|SAPA|A|0.17.S|0,2219|0,0000|0,0000|0,0000
ANTÓNIO ADOLFO PINTO BALDAIA
98405|ALAMOS|B|0.0.S|0,0695|0,0695|0,0056|0,0000
98406|ALAMOS|C|0.0.S|0,1750|0,1750|0,0000|0,0000
98407|ALAMOS|B|0.0.S|1,8851|1,8851|0,0000|0,3022
JOSÉ ANTÓNIO MONTEIRO CORDEIRO
102154|CHAO DA PEREIRA|A|0.0.S|0,1534|0,1534|0,0030|0,0000
JORGE MANUEL DUARTE
102401|MERUGE|A|0.0.S|1,0069|1,0069|0,0000|0,0000
102443|MERUGE|A|0.2.S|4,0655|4,0655|0,0000|0,0000
Ou seja aparece o NOME e depois a seguir ao nome aparecem os vários registos que pertencem a esse NOME.
Pegando no último nome que aparece:
JORGE MANUEL DUARTE
102401|MERUGE|A|0.0.S|1,0069|1,0069|0,0000|0,0000
102443|MERUGE|A|0.2.S|4,0655|4,0655|0,0000|0,0000
Eu preciso de um código que me importe para tabela da seguinte forma:
JORGE MANUEL DUARTE|102401|MERUGE|A|0.0.S|1,0069|1,0069|0,0000|0,0000
JORGE MANUEL DUARTE|102443|MERUGE|A|0.2.S|4,0655|4,0655|0,0000|0,0000
Eu já tenho um código que utilizava para importar dados de um ficheiro TXT para tabela ACCESS por posição... mas agora preciso de um código que importe através da barra "|".
- Código:
Do While Len(file_name) > 0
Open dir_path & file_name For Input As #1
Set rs = db.OpenRecordset("T_Teste", dbOpenTable)
Do While Not EOF(1)
Line Input #1, Linha
If ??? Then
nome = ???
End If
If Len(Linha) > 0 And Len(Linha) < 200 Then
rs.AddNew
rs("nome") = nome
rs("numero") = ???
rs("designacao") = ???
rs("cl") = ???
rs("situacao") = ???
rs("area_apta") = ???
rs("area_apta_a_mg") = ???
rs("area_nao_apta") = ???
rs("sem_eq_legal") = ???
rs.Update
End If
Loop
Close #1
file_name = Dir$()
Loop
O que eu preciso é ajuda a importar texto dividido por "|", porque acho que com este código que tenho adicionando a condição para importar até encontrar "|" consigo fazer o que pretendo.
Obrigado em avanço