FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Importar de excel a DBF
Posts: 632
Joined: Tue Dec 12, 2006 07:34 PM
Importar de excel a DBF
Posted: Thu Oct 14, 2010 06:24 PM

Hola buenas tardes,tengo la clase FILEXLS,y necesitaria importar a mi archivo base de datos de Excel,alguien tendrá alguna rutina o que lo haya hecho o un ejemplo, que me pueda darme la idea de importar desde mi sistema el archivo excel ?

Es con el fin de no capturar dos veces,el usuario captura datos en excel, y yo desde mi sistema necesitaria importar desde excel, todo lo capturado por el usuario y asi en mi sistema, una vez importado los datos de excel,el usuario pueda agregarle mas datos, calculos, etc etc .

Espero haberme explicado y que puedan ayudarme al respecto antes mencionado.

Gracias y se los agradeceré mucho a todos los colegas.

Atte: Adrian C. C.

acc69@hotmail.com

Posts: 1364
Joined: Wed Jun 21, 2006 12:39 AM
Re: Importar de excel a DBF
Posted: Thu Oct 14, 2010 06:53 PM

Podrias utilizar texcelscrip. funciona de maravillas. saludos

Posts: 632
Joined: Tue Dec 12, 2006 07:34 PM
Re: Importar de excel a DBF
Posted: Thu Oct 14, 2010 07:46 PM
horacio wrote:Podrias utilizar texcelscrip. funciona de maravillas. saludos

Buenas tardes Horacio, algun ejemplo que me pueda proporcionar y donde consigo la clase que recomienda o alguien que me pueda proporcionar la clase, o colegas, que puedan aportar sus experiencias en importar a su dbf, desde excel

Gracias y saludos
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Importar de excel a DBF
Posted: Thu Oct 14, 2010 07:53 PM
Adrian, aqui un ejemplio sin Clase

Code (fw): Select all Collapse
Function ExcelToDBF()
      LOCAL oExcel, oHoja, nRows, nCols,nRow, nCol
      LOCAL   aDBF := {"EMPLEADOS" }
      LOCAL   aHOJAS:= { "Hoja1" }
      PRIVATE cDbf
 
      oExcel:= TOleAuto():New( "Excel.Application" )
      *oExcel:WorkBooks:Open(cGetFile("C:\*.XLS", "Seleccione Fichero")) 
      oExcel:WorkBooks:Open("C:\PLANILLA.XLS") 
      If empty( oExcel )
         Retur nil
      Endif
      cDbf:= aDbf[i] + ".DBF"
       USE (cDbf) ALIAS Base EXCLUSIVE  
       DBZAP()
       oExcel:Sheets(aHojas[I]):Select()
       oHoja=oExcel:ActiveSheet 
       nRows := oHoja:UsedRange:Rows:Count()
       nCols := oHoja:UsedRange:Columns:Count()
       oDbfNam:SetText( "Convirtiendo " + aDbf[i]  )
       For nRow := 2 TO nRows
         APPEND BLANK
         FOR nCol := 1 TO nCols
           xValue := oHoja:Cells(nRow,nCol):Value
           FieldPut(nCol,xValue)
           SysRefresh()
         Next
         Memory(-1)
        Next I
   oExcel:Quit()
   Base->( dBCloseArea() )
  
Retu Nil


Saludos,

Adhemar
Saludos,



Adhemar C.
Posts: 632
Joined: Tue Dec 12, 2006 07:34 PM
Re: Importar de excel a DBF
Posted: Fri Oct 15, 2010 02:28 PM
acuellar wrote:Adrian, aqui un ejemplio sin Clase

Code (fw): Select all Collapse
Function ExcelToDBF()
      LOCAL oExcel, oHoja, nRows, nCols,nRow, nCol
      LOCAL   aDBF := {"EMPLEADOS" }
      LOCAL   aHOJAS:= { "Hoja1" }
      PRIVATE cDbf
 
      oExcel:= TOleAuto():New( "Excel.Application" )
      *oExcel:WorkBooks:Open(cGetFile("C:\*.XLS", "Seleccione Fichero")) 
      oExcel:WorkBooks:Open("C:\PLANILLA.XLS") 
      If empty( oExcel )
         Retur nil
      Endif
      cDbf:= aDbf[i] + ".DBF"
       USE (cDbf) ALIAS Base EXCLUSIVE  
       DBZAP()
       oExcel:Sheets(aHojas[I]):Select()
       oHoja=oExcel:ActiveSheet 
       nRows := oHoja:UsedRange:Rows:Count()
       nCols := oHoja:UsedRange:Columns:Count()
       oDbfNam:SetText( "Convirtiendo " + aDbf[i]  )
       For nRow := 2 TO nRows
         APPEND BLANK
         FOR nCol := 1 TO nCols
           xValue := oHoja:Cells(nRow,nCol):Value
           FieldPut(nCol,xValue)
           SysRefresh()
         Next
         Memory(-1)
        Next I
   oExcel:Quit()
   Base->( dBCloseArea() )
  
Retu Nil


Saludos,

Adhemar


Hola buenos dias como esta , gracias por el ejemplo Adhemar, probare y le confirmo que tal va, otro detalle, Adhemar se podria importar unicamente los datos que yo necesito ? no necesito importar todo el contenido de excel a mi dbf ,solo lo indispensable, y algun ejemplo, para poder iniciarme y adaptarlo a mis necesidades,gracias y le agradezco su ejemplo.

Saludos y buen dia

Adrian C. C.
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Importar de excel a DBF
Posted: Fri Oct 15, 2010 03:40 PM
Adrian

Tenes que saber que columnas queres.
Code (fw): Select all Collapse
 xValue := oHoja:Cells(nRow,nCol):Value  //nCol te indica la columna que queres.1
 FieldPut(nCol,xValue)
 //Podes hacer asi:
 xValue := oHoja:Cells(nRow,2):Value  ; FieldPut(2,xValue)
 xValue := oHoja:Cells(nRow,5):Value  ; FieldPut(5,xValue)


Saludos,


Adhemar
Saludos,



Adhemar C.

Continue the discussion