Seite 1 von 1

Calc in Foxpro einbinden

Verfasst: Mo 31. Mär 2014, 19:45
von KäseSchleifenKönig
Hallo Gemeinde, ich bin neu hier und überfalle Euch gleich mit einem schwierigen Thema.
ich möchte Calc als object in meine Applikation einbauen.
Schnipp...........
TOPIF RECCOUNT() < 65001 ************************************************
* SAVING TO Calc WITH LESS THAN 60000 RECORDS
* ************************************************ SET SAFETY OFF
COPY TO &vFile TYPE XLS SET SAFETY ON
oCalc = CREATEOBJECT("Calc.Application")
oWorkbook = oCalc.APPLICATION.Workbooks.OPEN(vFile)
oCalc.VISIBLE = .T.
oCalc.ActiveSheet.UsedRange.EntireColumn.AUTOFIT
oCalc.ROWS(1).FONT.bold = .T.
oCalc.ROWS(1).HorizontalAlignment = 3
oCalc.DisplayAlerts =.F.
oWorkbook.SAVEAS(vFile+".xls")
oCalc.DisplayAlerts =.T.
ELSE ************************************************
* SAVING TO calc WITH MORE THAN 60000 RECORDS * ************************************************
oCalc = CREATEOBJECT("Excel.Application")
oWorkbook = oCalc.APPLICATION.Workbooks.ADD()
oCalc.DisplayAlerts =.F.
oCalc.VISIBLE = .F.
oCalc.ActiveSheet.DELETE()
oCalc.ActiveSheet.NAME = "Import Data "+ALLTRIM(TRANSFORM(vsx,"9999"))
************************ * HEADING ON FIRST ROW * ************************
FOR fCnt=1 TO FCOUNT()
oCalc.cells(1,fCnt).VALUE= FIELD(fCnt)
ENDFOR
oCalc.ROWS(1).FONT.bold = .T.
oCalc.ROWS(1).HorizontalAlignment = 3
DO WHILE .T.
******************************** * TRANSFERRING VALUES TO Calc* ********************************
FOR fCnt=1 TO FCOUNT()
vRec=FIELD(fCnt)
oCalc.cells(vsY,fCnt)= OUTPUT.&vRec
ENDFOR
SKIP
IF EOF()
EXIT
ENDIF
vsY=vsY+1
IF vsY > 65000
oCalc.ActiveSheet.UsedRange.EntireColumn.AUTOFIT
vsY = 1
vsx=vsx+1
************************** * CREATING NEW WORKSHEET * **************************
oCalc.Worksheets("sheet3").SELECT
oCalc.Worksheets.ADD()
oCalc.ActiveSheet.NAME = "Import Data "+ALLTRIM(TRANSFORM(vsx,"9999"))
FOR fCnt=1 TO FCOUNT()
oCalc.cells(1,fCnt).VALUE= FIELD(fCnt)
ENDFOR
oCalc.ROWS(1).FONT.bold = .T.
oCalc.ROWS(1).HorizontalAlignment = 3
vsY=2
ENDIF
ENDDO
oCalc.ActiveSheet.UsedRange.EntireColumn.AUTOFIT
oCalc.Worksheets("sheet3").DELETE()
oCalc.DisplayAlerts =.F.
oWorkbook.SAVEAS(vFile+".xls")
oCalc.DisplayAlerts =.T.
oCalc.VISIBLE = .T.
ENDIF
********************************** end*********************************

Re: Calc in Foxpro einbinden

Verfasst: Di 1. Apr 2014, 09:26
von pmoegenb
Was willst Du damit in einem Anwenderforum für LibreOffice Forumsbereich Writer erreichen ?

Du möchtest doch mit FoxPro etwas realisieren und nicht mit LibreOffice. Von LibreOffice benötigst Du lediglich das SDK dazu.