Ĺadny brzuch
Czy można w jakiś sposób zawartość ListBox wyeksportować do Excella? Przy instalacji Delphi 7 były jakieś opcje do wyboru Office 97 lub 2000 i chyba jeszcze XP. W helpach nic nie znalazłem, na tym forum też nic i na http://www.4programmers.net też nic - kompletne zero, a jestem przekonany, że widziałem gdzieś aplikację która coś takiego robiła (otwierała Excella i zawartość ListBox już była w Arkuszu).
Może wywołać Excella z jakimś parametrem, który te dane ładuje, lub wyładować dane z parametrem otwierającym Excella. Widziałem gdzieś taki trik tylko z Notatnikiem. Jeśli dobrze myślę, to potrzebne do tego są jakieś dodatkowe komponenty? Mam Delphi Personal z komponentem Indy.
Perpetum
cytat:Perpetum napisał:
Czy można w jakiś sposób zawartość ListBox wyeksportować do Excella?
Tak - można.
cytat:Jeśli dobrze myślę, to potrzebne do tego są jakieś dodatkowe komponenty? Mam Delphi Personal z komponentem Indy.
Obejdzie się bez dodatkowych komponentów.
Poniżej zamieszczam mały przykładzik - dodaj do programu moduł ComObj oraz wrzuć sobie na formę Button'a i ListBox'a, do którego dodaj ileś tam linijek.
Następnie pod procedurę onclick Buttona podepnij sobie ten kod:
procedure TForm1.Button1Click(Sender: TObject); var vExcel : Variant; vExcelWorkbook : Variant; j : Word; begin vExcel := CreateOleObject('Excel.Application'); vExcel.Visible := true; vExcelWorkbook := vExcel.Workbooks.Add; for j:=0 to ListBox1.Count-1 do vExcelWorkbook.WorkSheets['Arkusz1'].Cells[j+1, 1].Value := ListBox1.Items.Strings[j]; vExcelWorkbook.SaveAs('dane.xls'); vExcel.Quit; end;
ICQ : 245-363-570
Działa nieźle!
Do swoich potrzeb zmodyfikuję to jeszcze pod względem zapisywania w odpowiednich katalogach i o nazwach zależnych od innych parametrow i od daty + godziny.
Dzięki.
Perpetum
Wiedz, że odpowiadając na moje (pewnie głupie) pytania "ratujesz" mi życie !!! :-)
cytat:Perpetum napisał:
Działa nieźle!
Do swoich potrzeb zmodyfikuję to jeszcze pod względem zapisywania w odpowiednich katalogach i o nazwach zależnych od innych parametrow i od daty + godziny.
Dostosuj jak Ci pasuje :)
A co do komunikacji Delphi-Excell to można ustawić dużo więcej rzeczy - możliwości są naprawdę spore...
cytat:
Wiedz, że odpowiadając na moje (pewnie głupie) pytania "ratujesz" mi życie !!! :-)
No co Ty - pytania na które Ci odpowiadałem nie były wcale głupie - a to z Excellem było jednym z najciekawszych na jakie tu ostatnio odpowidałem :)
ICQ : 245-363-570
Tekscik ten wstawiłem jako autopodpis, bo planuję w niedalekim czasie trochę pomęczyć grupowiczów pytaniami, dopiero zaczynam pisać w Delphi i nie mam świadomości jeszcze czy pytania są banalne, głupie czy jakie.
Perpetum
Wiedz, że odpowiadając na moje (pewnie głupie) pytania "ratujesz" mi życie !!! :-)
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Może wywołać Excella z jakimś parametrem, który te dane ładuje, lub wyładować dane z parametrem otwierającym Excella. Widziałem gdzieś taki trik tylko z Notatnikiem. Jeśli dobrze myślę, to potrzebne do tego są jakieś dodatkowe komponenty? Mam Delphi Personal z komponentem Indy.
Perpetum
cytat:Perpetum napisał:
Czy można w jakiś sposób zawartość ListBox wyeksportować do Excella?
Tak - można.
cytat:Jeśli dobrze myślę, to potrzebne do tego są jakieś dodatkowe komponenty? Mam Delphi Personal z komponentem Indy.
Obejdzie się bez dodatkowych komponentów.
Poniżej zamieszczam mały przykładzik - dodaj do programu moduł ComObj oraz wrzuć sobie na formę Button'a i ListBox'a, do którego dodaj ileś tam linijek.
Następnie pod procedurę onclick Buttona podepnij sobie ten kod:
procedure TForm1.Button1Click(Sender: TObject); var vExcel : Variant; vExcelWorkbook : Variant; j : Word; begin vExcel := CreateOleObject('Excel.Application'); vExcel.Visible := true; vExcelWorkbook := vExcel.Workbooks.Add; for j:=0 to ListBox1.Count-1 do vExcelWorkbook.WorkSheets['Arkusz1'].Cells[j+1, 1].Value := ListBox1.Items.Strings[j]; vExcelWorkbook.SaveAs('dane.xls'); vExcel.Quit; end;
ICQ : 245-363-570
Działa nieźle!
Do swoich potrzeb zmodyfikuję to jeszcze pod względem zapisywania w odpowiednich katalogach i o nazwach zależnych od innych parametrow i od daty + godziny.
Dzięki.
Perpetum
Wiedz, że odpowiadając na moje (pewnie głupie) pytania "ratujesz" mi życie !!! :-)
cytat:Perpetum napisał:
Działa nieźle!
Do swoich potrzeb zmodyfikuję to jeszcze pod względem zapisywania w odpowiednich katalogach i o nazwach zależnych od innych parametrow i od daty + godziny.
Dostosuj jak Ci pasuje :)
A co do komunikacji Delphi-Excell to można ustawić dużo więcej rzeczy - możliwości są naprawdę spore...
cytat:
Wiedz, że odpowiadając na moje (pewnie głupie) pytania "ratujesz" mi życie !!! :-)
No co Ty - pytania na które Ci odpowiadałem nie były wcale głupie - a to z Excellem było jednym z najciekawszych na jakie tu ostatnio odpowidałem :)
ICQ : 245-363-570
Tekscik ten wstawiłem jako autopodpis, bo planuję w niedalekim czasie trochę pomęczyć grupowiczów pytaniami, dopiero zaczynam pisać w Delphi i nie mam świadomości jeszcze czy pytania są banalne, głupie czy jakie.
Perpetum
Wiedz, że odpowiadając na moje (pewnie głupie) pytania "ratujesz" mi życie !!! :-)