Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MS Ёксель. Chart'ы [D6, Win2k, WinXP]


HpeHoBuHa ©   (2006-03-15 15:11:00) 

Задача построить график Ёкселя с заданного диапазона ечеек.. все бы хорошо, но вылетает ошибка "член группы не найден".
Строчку в которой сие происходит засветил жырным..
все остальное работает, а вот енто.... ех.. :(

Помогито пожалуйста разобраца.

Excel := CreateOleObject('Excel.Application');
Sheet:=Workbook.ActiveSheet;

Excel.Charts.add;
Excel.ActiveChart.ChartType := xlLine;


Excel.ActiveChart.SetSourceData(
       Source:=Sheet.Range('C1:C12'),
       PlotBy:=xlColumns  );

{ пример из ёкселевого макроса
   ActiveChart.SetSourceData Source:=Sheets("имя листа").Range("диапазон"), _
       PlotBy:=xlColumns
}

Excel.ActiveChart.Location(
       Where:=xlLocationAsObject,
       Name:=Sheet.Name );


AbrosimovA   (2006-03-15 16:47:00) [1]

var WorkSheet1,WorkSheet2,Chart1:OleVariant;
   
procedure TMainForm.ChartData;
var XRange,YRange: Variant;
begin
WorkSheet2:=WorkBook.WorkSheets[2];
WorkSheet2.Name:='Графики';
if Worksheet2.ChartObjects.Count>0 then
   Worksheet2.ChartObjects.Delete;
Chart1:=Worksheet2.ChartObjects.Add(1, 1, 400, 250);
XRange:=Worksheet1.Range['A2','A'+IntToStr(X)];
YRange:=Worksheet1.Range['B2','B'+IntToStr(X)];
Chart1.Chart.SeriesCollection.Add(YRange);
Chart1.Chart.Axes(xlCategory).CategoryNames:=XRange;
if Flag4 then
 begin
  Chart1.Chart.SeriesCollection(1).ChartType:= xlLineMarkers;
  Chart1.Chart.HasTitle:=true;//Отображать титул
  Chart1.Chart.HasLegend:=false; //Не отображать легенду
  Chart1.Chart.ChartTitle.Text:=WorkSheet1.Cells.Item[1,2].Value; //Текст титула
  Chart1.Chart.ChartTitle.Interior.Color:= RGB(0, 255, 0);//Цвет фона титула
  Chart1.Chart.Axes(xlValue).TickLabels.NumberFormat:= '0'+DecimalSeparator+'00';
  Chart1.Chart.Axes(xlValue).HasMinorGridlines:= True;
  Chart1.Chart.Axes(xlValue).MajorGridlines.Border.Color:=RGB(133,133,133);
  Chart1.Chart.Axes(xlValue).MinorGridlines.Border.Color:=RGB(133,133,133);
  Chart1.Chart.Axes(xlValue).MajorGridlines.Border.LineStyle:= xlDot;
  Chart1.Chart.Axes(xlValue).MinorGridlines.Border.LineStyle:= xlDot;
  Chart1.Chart.Axes(xlCategory).HasMajorGridlines:= True;
  Chart1.Chart.Axes(xlCategory).HasMinorGridlines:= True;
  Chart1.Chart.Axes(xlCategory).MajorGridlines.Border.Color:=RGB(133,133,133);
  Chart1.Chart.Axes(xlCategory).MinorGridlines.Border.Color:=RGB(133,133,133);
  Chart1.Chart.Axes(xlCategory).MajorGridlines.Border.LineStyle:= xlDot;
  Chart1.Chart.Axes(xlCategory).MinorGridlines.Border.LineStyle:= xlDot;
  Chart1.Chart.ChartArea.Border.ColorIndex:= 5;//Цвет рамки
 end;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо