Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.117.192.205] |
|
Сообщ.
#1
,
|
|
|
Добрый день.
Работаю с Chart. он рисует один график. я бы хотел в фоне создать файл excel где будут исходные цифры для графика и сам график. как это сделать вообще не понимаю. пробывал создать файл csv но заставить построить график при открытии не могу |
Сообщ.
#2
,
|
|
|
Цитата Emmys @ Chart Это компонент дельфи, Excel и график в нем это Ole object, следовательно Chart ты не всунешь в эксель, только создавать там график( гугли ) Создается эксель так: Var WX:variant; Begin WX:=CreateOleObject('Excel.Application'); End; |
Сообщ.
#3
,
|
|
|
Записываешь макрос в Excel, а потом копируешь код в Delphi.
Как то так var Excel:Variant; WorkSheet:Variant; Chart:Variant; i:Integer; begin Excel := CreateOleObject('Excel.Application'); Excel.Visible:=True; // Создадим новую книгу Excel.Workbooks.Add; WorkSheet:=Excel.Workbooks[1].WorkSheets.Add; // -------- или --------- // Откроем существующую книгу // Excel.Workbooks.Open('FileName.xls'); // Графики и данные WorkSheet.name:='Графики'; Chart:=WorkSheet.ChartObjects.Add(300,300,750,500).Chart; Chart.ChartType:=xlXYScatterLines; Chart.SeriesCollection.NewSeries; Chart.SeriesCollection(0).Name:='Серия1'; for i:=0 to 100 do begin WorkSheet.Cells[i,0].Value:=i; WorkSheet.Cells[i,1].Value:=i*i; end; s:='=Графики!'+WorkSheet.Cells[0,0].Address+':'+ WorkSheet.Cells[100,0].Address; Chart.SeriesCollection(0).XValues:= s; s:='=Графики!'+WorkSheet.Cells[0,1].Address+':'+ WorkSheet.Cells[100,1].Address; Chart.SeriesCollection(0).Values:= s; |
Сообщ.
#4
,
|
|
|
^D^ima - спасибо большое.
Pavia - невероятно Вам благодарен за пример! очень сильно помогли. |