Clipper On Line • Ver Tópico - Importar arquivo Excel para DBF

Importar arquivo Excel para DBF

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Importar arquivo Excel para DBF

Mensagempor Paulo_CPV » 24 Jan 2014 14:26

Boa tarde!

Gostaria de saber do colegas do grupo, se você sabem me dizer como faço para importar um arquivo Excel que tem 12 colunas para um DBF que tem 3 campos:

Excel: Colunas 1,2,3 seus conteúdos são os mesmos para as colunas 4,5,6 e 7,8,9 e 10,11,12 respectivamente.

Colunas:
1 2 3 4 5 6 7 8 9 10 11 12
NIT Matricula Valor NIT Matricula Valor NIT Matricula Valor NIT Matricula Valor

Minha dúvida é como gravar estas colunas nos 3 campos do DBF. Os campos que receberam as colunas são: DB_001,DB_002 e DB_003, os campos correspondem a: DB_001 = NIT , DB_002 = Matricula e DB_003 = Valor.

Quem puder me ajudar ficarei grato.

[]'
Paulo
Jacareí/SP
Paulo_CPV
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 178
Data de registro: 07 Mar 2013 10:27
Cidade/Estado: Jacarei/SP
Curtiu: 0 vez
Mens.Curtidas: 1 vez

Importar arquivo Excel para DBF

Mensagempor Toledo » 24 Jan 2014 15:59

Paulo, você pode abrir o arquivo do excel e ir pegando o conteúdo de cada coluna e depois gravar no DBF.

oExcel := TOleAuto():New( "Excel.Application" )

oExcel:WorkBooks:Open( "nomearquivo.xls" )

oSheet := oExcel:Get( "ActiveSheet" )
oSheet:Cells( 1, 1 ):Select()
nLin:=1
Do While .T.
v_NIT1:=oSheet:Cells( nLin, 1 ):Value
v_MAT1:=oSheet:Cells( nLin, 2 ):Value
v_VLR1:=oSheet:Cells( nLin, 3 ):Value

v_NIT2:=oSheet:Cells( nLin, 4 ):Value
v_MAT2:=oSheet:Cells( nLin, 5 ):Value
v_VLR2:=oSheet:Cells( nLin, 6 ):Value

v_NIT3:=oSheet:Cells( nLin, 7 ):Value
v_MAT3:=oSheet:Cells( nLin, 8 ):Value
v_VLR3:=oSheet:Cells( nLin, 9 ):Value

v_NIT4:=oSheet:Cells( nLin, 10 ):Value
v_MAT4:=oSheet:Cells( nLin, 11 ):Value
v_VLR4:=oSheet:Cells( nLin, 12 ):Value

//Aqui você grava as variáveis acima no arquivo DBF

nLin+=1
//Verifica se na próxima linha tem algum valor
If Empt(oSheet:Cells( nLin, 1 ):Value)
  Exit    //se estiver vazio, sai do Do While
Endif
EndDo
oExcel:ActiveWorkbook:Close()


Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes




Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Google [Bot] e 8 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro