Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2013, 23:54   #1
Максикок
Пользователь
 
Регистрация: 07.10.2010
Сообщений: 71
По умолчанию OLE-сервер

вообщем в билдере нужно написать макрос exel
Сгенерировать таблицу из 3 столбцов (количество строк указывает пользователь), причем значением каждой ячейки третьего слева столбца является сумма значений ячеек таблицы слева соответствующей строки
Код:
int i,j;
Sheet=MyBook.OlePropertyGet("ActiveSheet");
for(int i=1;i<Sheet.OlePropertyGet("Worksheets", (Form1->Edit1->Text).c_str());i++){
for(int j=1;j<3;j++){
int m =5;
 Cell.OlePropertyGet("Cells", j, i);
       Cell.OlePropertySet("Value", m); }
       int sum;
       sum=0;
sum=sum+ Cell.OlePropertyGet("Cells", 1, i)+Cell.OlePropertyGet("Cells", 2, i);
 Cell.OlePropertyGet("Cells", 3, i);
       Cell.OlePropertySet("Value", sum);
}
вроде как все верно но не работает,m должно задаваться рандомно,но щас не важно это,вообщем что не так подскажите пожалуйста
Максикок вне форума Ответить с цитированием
Старый 19.12.2013, 15:00   #2
Максикок
Пользователь
 
Регистрация: 07.10.2010
Сообщений: 71
По умолчанию

Код:
int n = CSpinEdit1->Value;
 int row,col;
 Variant Cells,Cell;
 MySheet = MyBook.OlePropertyGet("ActiveSheet");
 Cell = MSExcel.OlePropertyGet("ActiveCell");
 row =  Cell.OlePropertyGet("Row");
 col =  Cell.OlePropertyGet("Column");
for(int i=0;i<3;i++){
 for(int j=1; j<n+1; j++){
  MySheet.OlePropertyGet("Cells", row+j-1,col+i ).OlePropertySet("Value",2);
 }
//до этого момента все впорядке
 int sum;
       sum=0;
sum=sum+ MySheet.OlePropertyGet("Cells", row+0,col+i)+MySheet.OlePropertyGet("Cells",row+1,col+i);
 MySheet.OlePropertyGet("Cells",row+2,col+i).OlePropertySet("Value", sum);;
       }
генерация таблицы(значение строк указывает пользователь),тут все впорядке,каждая ячейка таблицы заполняется числом 2(не суть)
а вот с суммой проблема,в вба все так же работет,а тут выдает ошибку
подскажите пожалуйста,в чем проблема
Максикок вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ole сервер Word s100i29 C++ Builder 3 30.03.2011 21:45
OLE Maks1978 Общие вопросы C/C++ 1 29.10.2008 10:10
OLE Maks1978 БД в Delphi 1 29.10.2008 10:06
Формирование Excel-документа через OLE-сервер с Unicode-символами sergushkin Microsoft Office Excel 2 13.04.2008 23:04