Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Report Output To Excel.... Is this possible? If so best
Message
De
06/01/2001 15:09:58
 
 
À
06/01/2001 09:02:24
Information générale
Forum:
Visual FoxPro
Catégorie:
Gestionnaire de rapports & Rapports
Divers
Thread ID:
00459677
Message ID:
00460237
Vues:
18
>Look at Application.DataToClip() to copy VFP table/cursor data to the
>windows clipboard and then paste it into Excel. You are not constrained
>to the 16K limit like COPY TO XLS. Another benefit to this
>approach is that you can have a preformatted Excel spreadsheet template
>and simply drop the data into it and save as another name. Here is an
>example of that technique:
>
>oExcel = CREATEOBJECT('Excel.Application')
>
>*-- Open the preformatted Excel template file
>oExcel.WorkBooks.Open(cExcelTemplateFile) && This is read only
>
>GO TOP IN vfp_cursor
>*-- Copy tab delimited list of table values to windows clipboard
>Application.DataToClip('vfp_cursor', RECCOUNT('vfp_cursor'), 3)
>
>WITH oExcel
>*-- Select the proper sheet
>.Sheets('sheetname').Select()
>*-- Position the cursor
>.Selection.Range("A6").Select()
>*-- Paste the contents of the clipboard
>.ActiveSheet.Paste()
>
>*-- Get rid of the table column names
>.Rows("6:6").Select()
>.Selection.ClearContents()
>.Range("A1").Select()
>
>.DisplayAlerts = .F.
>*-- Save file under a new name hence preserving the template for future use
>.ActiveWorkBook.SaveAs(cDirAndFileName)
>.Quit()
>ENDWITH
>
>oExcel = .NULL.
>RELEASE oExcel
>

Does the paste method still have problems dealing with .NULL. values? Is the paste method still limited in total size (used to be around 5K bytes???). I've not tried much pasting into Excel lately, so I'm not sure.

The NULL problem was a real bear, and the limited size could be dealt with in a loop. But the net result was *way* faster then trying to automate filling the cells of a sheet one by one, that's for sure.
Fred
Microsoft Visual FoxPro MVP

foxcentral.net
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform