Search  
Thursday, May 24, 2012 ..:: Forum ::.. Register  Login
 Forum Minimize
Pentru a putea posta mesaje trebuie să vă înregistraţi.
Notă: Mesajele cu conţinut jignitor sau ilegal (inclusiv cereri de soft piratat) nu sunt acceptate şi vor fi şterse imediat .

Pentru a primi raspunsuri rapide si corecte, scrieti in mesaj ce intentionati sa faceti, ce mesaj de eroare primiti, in ce context si in urma caror actiuni. De asemenea, mentionati versiunea de FoxPro in care lucrati!
Dacă nu specificați versiunea, se consideră VFP 9.0 SP2.

SearchForum Home
  Visual FoxPro  Office Automation  Export in excel...
 Export in excel cu mai multe sheet-uri
 
 1/31/2012 9:20:57 PM
User is offlinecrisony01
50 posts


Export in excel cu mai multe sheet-uri
 (Romania)
Am si eu o problema, am gasit un script pentru export in excel mai precis acesta
*COPY TO aaa.xls TYPE xls
exl=CREATEOBJECT("excel.application")
exl.workbooks.open(SYS(5)+CURDIR()+'\aaa.xls')
exl.visible=.T.
EXL.activesheet.name="Mij.Fixe"
EXL.activesheet.tab.color=RGB(255,0,0)

exl.ActiveSheet.Columns("a:a").ColumnWidth=8
exl.ActiveSheet.Columns("b:b").ColumnWidth=8
exl.ActiveSheet.Columns("c:c").ColumnWidth=12
exl.ActiveSheet.Columns("d:d").ColumnWidth=40
exl.ActiveSheet.Columns("e:e").ColumnWidth=30
exl.ActiveSheet.Columns("f:f").ColumnWidth=6
exl.ActiveSheet.Columns("g:g").ColumnWidth=6
exl.ActiveSheet.Columns("h:h").ColumnWidth=8
exl.ActiveSheet.Columns("i:i").ColumnWidth=8

exl.ActiveSheet.Range("a1:r1").FONT.color=RGB(255,0,255)
exl.ActiveSheet.Range("a1:r1").Font.Bold ='True'
exl.ActiveSheet.Range("a1:r1").FONT.size=10
exl.ActiveSheet.Range("a1:r1").borders.LineStyle=1
exl.ActiveSheet.Range("a1:r1").interior.colorindex=35

exl.cells(1,1).Value="Nr.INV"
exl.cells(1,2).Value="DEPART"
exl.cells(1,3).Value="COD CLASIF"
exl.cells(1,4).Value="DENUMIRE MIFIX"
exl.cells(1,5).Value="ELEMENT IDENTIFICARE"
exl.cells(1,6).Value="AN FU"
exl.cells(1,7).Value="LU FU"
exl.cells(1,8).Value="DUR.NOR"
exl.cells(1,9).Value="DUR.CON"

exl.ActiveSheet.Columns("a:r").EntireColumn.AutoFit

problema mea este cum as putea insera in acelas fisier mai multe sheet-uri cu nume diferite si date diferite din mai multe tabele, adica 3 tabele 3 sheet-uri.
 1/31/2012 10:18:23 PM
User is offlineadmin
20 posts


Re: Export in excel cu mai multe sheet-uri
 (N/A)
Am mutat threadul aici, unde ii este locul. Cred ca aici ai si vrut sa-l pui de la inceput.
 1/31/2012 10:31:10 PM
User is offlinecrisony01
50 posts


Re: Export in excel cu mai multe sheet-uri
 (Romania)
Da asa este si sper sa ma ajute si pe mine cineva cu problema asta
 2/1/2012 12:08:27 AM
User is offlineDoru Constantin
321 posts
3rd




Re: Export in excel cu mai multe sheet-uri
 (N/A)
 crisony01 wrote
Da asa este si sper sa ma ajute si pe mine cineva cu problema asta


Ex: ai 3 fisiere xls (daca sunt exportate din vfp au un singur sheet fiecare), a, b si c --> rezulta un fisier abc.xls ;)

Local oExcel as excel.application
Local w1 as Excel.Workbook
Local w2 as Excel.Workbook
Local w3 as Excel.Workbook
Local s1 as Excel.Worksheet
Local s2 as Excel.Worksheet
Local s3 as Excel.Worksheet

oExcel = CREATEOBJECT("excel.application")
oExcel.DisplayAlerts = .F.

w1 = oExcel.Workbooks.Open("a.xls")
w2 = oExcel.Workbooks.Open("b.xls")
w3 = oExcel.Workbooks.Open("c.xls")

s1 = w1.ActiveSheet
s2 = w2.ActiveSheet
s3 = w3.ActiveSheet

s1.Name = "a" && sau cum vrei tu
s2.Name = "b"
s3.Name = "c"

s3.Copy(,w1.Worksheets(s1.Name))
s2.Copy(,w1.Worksheets(s1.Name))

w1.SaveAs("abc.xls",,,,,,,2)

w1.Close(.F.)
w2.Close(.F.)
w3.Close(.F.)

oExcel.Quit


*-- verificat cu office 2010 sp1
 2/1/2012 12:17:08 AM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Export in excel cu mai multe sheet-uri
 (N/A)
De cele mai multe ori cand am nevoie sa fac ceva in Excel, inregistrez un macro si apoi ma uit la codul generat de excel. Sintaxa este destul de asemanatoare.

Am inregistrat un macro in timp ce am adaugat manual un sheet nou, l-am redenumit, am selectat primul sheet, apoi pe al doilea. Codul generat de excel este asta:

Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Sheet2").Select
Sheets("Sheet2").Name = "Pagina2"
Sheets("Pagina2").Select

Echivalentul VFP este (o iau de la instantierea aplicatiei):
oXL = CreateObject("Excel.Application")
oWkb = oXL.Workbooks.Add()

oWkb.Worksheets.Add(,oWkb.Workseets(oWkb.Worksheets.Count))
oWkb.Worksheets(1).Select
oWkb.Worksheets(2).Name = "Pagina2"
oWkb.Worksheets(2).Select

Smecheria e sa te prinzi cum se adauga un worksheet. Before si After sunt referinte la worksheet-uri existente (sheets(sheets.count) inseamna Sheets(3), de exemplu).

Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 2/1/2012 11:15:42 AM
User is offlinecrisony01
50 posts


Re: Export in excel cu mai multe sheet-uri
 (Switzerland)
Va multumesc pentru ajutor am sa incerc si dau un semn daca am reusit.
  Visual FoxPro  Office Automation  Export in excel...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement