Имя: Пароль:
1C
 
1с и Диаграммы Excel
0 Ben
 
10.12.04
12:55
Строю Гистаграмму, вроде все получается, но я хочу подписать cdjb значения по оси  X.
Записал макрос, его представление в VBA

   ActiveChart.SeriesCollection(1).XValues = "=Лист1!R17C4:R17C5"
   ActiveChart.SeriesCollection(2).XValues = "=Лист1!R17C4:R17C5"
   ActiveChart.SeriesCollection(3).XValues = "=Лист1!R17C4:R17C5"

Пишу в 1с

DataSheet = Объект.Sheets("Лист1");

Для i=1 По 5 Цикл
   DataSheet.Cells(1,i).Value = i;
   DataSheet.Cells(2,i).Value = i;
   DataSheet.Cells(3,i).Value = 10+i;
КонецЦикла;

Data1= DataSheet.Range(DataSheet.Cells(3,1), DataSheet.Cells(3,2));

Diagram.SeriesCollection(1).XValues(Data1);

В итоге получаю:
Microsoft Office Excel: Метод XValues из класса Series завершен неверно

Помогите Плиз!!!
Заранее Благодарен
1 Бивень
 
10.12.04
12:59
Ему ж нужна строка ...
А ты что подсовываешь?
2 Ben
 
10.12.04
13:01
Diagram.SeriesCollection(1).XValues("dewdwd");
{Отчет.новый1.Форма.Модуль(839)}: Microsoft Office Excel: Метод XValues из класса Series завершен неверно
3 1С Дурочка
 
10.12.04
13:11
Если в VB пишешь
ActiveChart.SeriesCollection(1).XValues = "=Лист1!R17C4:R17C5"
ActiveChart.SeriesCollection(2).XValues = "=Лист1!R17C4:R17C5"
ActiveChart.SeriesCollection(3).XValues = "=Лист1!R17C4:R17C5"

то в 1С пиши

Excel.ActiveChart.SeriesCollection(1).XValues = "=Лист1!R17C4:R17C5";
Excel.ActiveChart.SeriesCollection(2).XValues = "=Лист1!R17C4:R17C5";
Excel.ActiveChart.SeriesCollection(3).XValues = "=Лист1!R17C4:R17C5";
4 Ben
 
10.12.04
13:19
Это неправильно!!! Что за переменная Excel?
5 1С Дурочка
 
10.12.04
13:24
Excel = СоздатьОбъект("Excel.Application");
Ты, значит, кидаешь какие-то огрызки своего идиотского кода и все должны налету хватать что там у тебя за переменные? А сам не можешь элементарного понять.
6 Бивень
 
10.12.04
13:27
(5) У него объект ЭксельЧарт лежит на таблице ...
Это ещё из (0) понятно было ...
7 Dj
 
10.12.04
13:43
Во блин, тем же занимаюсь (строю диаграммы):))
8 Ben
 
10.12.04
13:43
Совершенно верно
9 Ben
 
10.12.04
13:46
Код полностью

   // Определяем область данных для диаграммы на листе данных    
   DataSheet = Объект.Sheets("Лист1");
   
   // Определяем объект Диаграмма1 для дисте диаграмм
   DiagramSheet = Объект.Sheets("Диаграмма1");
   
   // Заполним область данных для диаграммы:
   Для i=1 По 5 Цикл
       DataSheet.Cells(1,i).Value = i;
       DataSheet.Cells(2,i).Value = i;
       DataSheet.Cells(3,i).Value = 10+i;
   КонецЦикла;

   // Выделим область данных для диаграммы:
   Data = DataSheet.Range(DataSheet.Cells(1,1), DataSheet.Cells(2,5));
   Data1= DataSheet.Range(DataSheet.Cells(3,1), DataSheet.Cells(3,2));
   
   // Создадим диаграмму:
   // ChartObjects.Add(отступ слева,отступ сверху,ширина,высота)
   Diagram = DiagramSheet.ChartObjects.Add(1,1,270,130).Chart;    
   
   Diagram.PlotBy=КонстантаExcel("xlColumns");
   

   Diagram.ChartWizard(Data);
   Diagram.ChartType = 58;
   
   Diagram.SeriesCollection(1).Interior.ColorIndex  =КонстантаExcel("xlNone");
   Diagram.SeriesCollection(1).Border.LineStyle =КонстантаExcel("xlNone");
   Diagram.PlotArea.Interior.ColorIndex = КонстантаExcel("xlNone");
   
       
       
   Diagram.SeriesCollection(1).XValues("dewdwd"); - не работает
   
   
   
   // Определяем заголовок диаграммы для вывода
   Diagram.HasTitle = 1;
   Diagram.ChartTitle.Text = "Пример диаграммы";
10 Бивень
 
10.12.04
13:48
(9) Чтоб работало, пиши как положено, не надо выдумывать ничего от себя ...
11 1С Дурочка
 
10.12.04
13:49
Почитай вот тут
http://www.mista.ru/tutor_1c/diagram.htm
это очень полезная статья. Там в конце есть пример того как не надо делать диаграммы. (Интересно, у кого он этот кусок кода перепёр? Ну, так, чтобы знать кто у него друзья.)
12 Dj
 
10.12.04
13:49
а я забил на SeriesCollection, и использую что типа:

Объект.Charts("Диаграмма1").SetSourceData (  DataSheet.Range(ЛистДанных.Cells(1,1),   DataSheet.Cells(стр,2)),КонстантаЕкселя("xlColumns"))
13 Бивень
 
10.12.04
13:52
(11) Это с ИТС, кажись, перепёрто ...
14 1С Дурочка
 
10.12.04
13:53
(13) Что 1 в 1? Не может быть. На ИТС такую лажу не публикуют.
15 Бивень
 
10.12.04
13:57
(14) Ну, не знаю ... Я не читал, ни то, ни то ...
16 Ben
 
10.12.04
14:07
Объект.Charts("Диаграмма1").SetSourceData (  DataSheet.Range(ЛистДанных.Cells(1,1),   DataSheet.Cells(стр,2)),КонстантаЕкселя("xlColumns"))
- Это работает, уставливает значение по которым строится диаграмма,
Но мне нужно установить значения которыми подписывается ось координат
17 Dj
 
10.12.04
14:16
так после SetSourceData, 1 колонка листа и подпишет
18 Ben
 
10.12.04
14:26
Дошло
Надо так

Diagram.SeriesCollection(1).XValues=Data1;

Всем Спасибо!!!
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.