Witam.
Piszę pracę inżynierską w delphi 7, jest to apka, która wylicza wszystkie możliwe parametry projektowe silnika spalinowego.
potrzebuję narysować wykres i postanowiłem użyć do tego obiektu OleContainer z wstawionym zeszytem Excela, problem w tym że wszystkie przykłady jakie znalazłem w necie odnoszą się do przypadku otwierania nowego okna Excela, i nie mogę wyeksportować konkretnych var-ów do arkusza zagnieżdżonego w OleContainer1.
PS.
Zeszyt zagnieżdżony posiada już Arkusz1 z wypełnionymi formułami obrabiającymi eksportowane var-y, i tworzy Wykres1 w nowym Arkuszu
Proszę o pomoc.
Pozdrawiam
Paweł
0
0
Znalazłem rozwiązanie, chociaż trochę mało mnie zadowala.
Może komuś się przyda
procedure TForm1.Button1Click(Sender: TObject);
begin
p1:=6; //jedna z 12 zmiennych, które muszę wstawić.
OleContainer1.SaveAsDocument('c:\1.xls'); //zapisuje to co jest w OleContainer1 na dysku... (nie chciałem tego robić, ale jak się nie ma co się lubi...)
createoleobject('Excel.Application'); //tworzy ukryte okienko excela, na którym pracuje
Excel:= GetActiveOleObject('Excel.Application');
excel.workbooks.open('c:\1.xls');
excel.worksheets[1].cells[1,1].value:=p1;
excel.ActiveWorkBook.saveas('c:\2.xls',true); //zapisuje wynik swojej pracy
Excel.DisplayAlerts := False;
Excel.Quit;
olecontainer1.CreateLinkToFile('c:\2.xls',false); //Wyświetla wynik swojej pracy w OleContainer1
end;
Jeśli ktoś z użytkowników potrafi pominąć operacje na pliku 1.xls i 2.xls proszę o info.
Pozdrawiam
Paweł