|
23.07.2008, 11:46 | #1 |
Moderator
|
|
|
23.07.2008, 11:59 | #2 |
Участник
|
Цитата:
X++: COM COMAppl; COM COMWorkbooks, COMworkbook, COMChart; COM COMWorksheet; COM COMSeries; ; ... COMappl = COM::getObject(#Excel); if (! COMappl) COMappl = new COM(#Excel); try { COMappl.visible(TRUE); COMworkbooks = COMAppl.Workbooks(); COMworkbook = COMworkbooks.add(); COMWorksheet = COMworkbook.Worksheets(); COMWorksheet = COMWorksheet.Item(1); COMChart = COMworkbook.Charts(); COMChart = COMChart.add(); COMChart.ChartType(65); COMChart = COMChart.Location(2 , COMWorksheet.Name() ); COMSeries = COMChart.SeriesCollection(); COMSeries = COMSeries.NewSeries(); COMSeries.Values( "1"); COMSeries.Name( "№1"); COMSeries.XValues( con2str(conX,";") ); // но как прописать такое ... / ActiveWindow.Visible = False Windows("Книга1").Activate ActiveSheet.ChartObjects("Диагр. 1").Activate ActiveChart.ChartArea.Select COMSeries.Shapes("Диагр. 1").IncrementLeft -222# ActiveSheet.Shapes("Диагр. 1").IncrementTop -159# Затрудняюсь написать. Да и не верно это будет. указывать куда конкретно переместить диаграмму. Ведь от условий запуска они могут быть разные . вот тут-то и загвоздка. |
|
23.07.2008, 12:12 | #3 |
Moderator
|
Цитата:
чего хотите-то в итоге? или на разных листах разместить? Цитата:
Сообщение от fialka
но как прописать такое ... /
ActiveWindow.Visible = False Windows("Книга1").Activate ActiveSheet.ChartObjects("Диагр. 1").Activate ActiveChart.ChartArea.Select COMSeries.Shapes("Диагр. 1").IncrementLeft -222# ActiveSheet.Shapes("Диагр. 1").IncrementTop -159# Затрудняюсь написать. Ко всем этим строчкам можно для наглядности приставить слева "Application." и сразу всё становится понятнее. Строчки типа: ActiveSheet.ChartObjects("Диагр. 1").Activate ActiveChart.ChartArea.Select можно сразу удалить. Они олицетворяют ваш выбор мышкой во время записи макроса и совершенно не нужны в автоматическом режиме. Ну, и хелп в Excel по этим новым объектам поглядеть надо. У объекта Shape есть не только свойства IncrementLeft и IncrementTop, но и просто Left и Top - так что можно сразу позиционировать диаграмму в конкретное место, а не передвигать ее из места по умолчанию. Цитата:
1 2 3 4 5 6 или, скажем, так: 1 4 2 5 3 6 |
|