![]() |
#6 |
Участник
|
Общее правило при работе с любыми внешними (по отношению к Axapta) объектами:
Следует избегать многосоставных конструкций. Со многими точками. А в данном случае, нужно просто явно указать класс объекта, который будет выполнять обработку. В данном случае - чтение значение ячейки X++: static void checkExcell(Args _args) { FilePath path=''; container conFilter = ["Файл (*.xls)", "*.xls"]; SysExcelApplication exappl; SysExcelCells excells; SysExcelWorksheets exsheets; SysExcelWorksheet exsheet; int row; real a,b; // Добавчик SysExcelCell excellOne; SysExcelCell excellTwo; ; path = WinAPI::getOpenFileName(0,conFilter,"", "Укажите файл ",'',""); if (!path) return; exappl = SysExcelApplication::construct(); exappl.workbooks().open(path); exsheets = exappl.workbooks().item(1).worksheets(); exsheet = exsheets.itemFromNum(1); excells = exsheet.cells(); for(row = 1;row<3;row++) { // Вот это надо сделать excellOne = excells.item(row,1); excellTwo = excells.item(row,2); a = excellOne.value().double(); //info(strfmt('%1',a)); // строка 1 b = excellTwo.value().double(); info(strfmt('%1',a)); // строка 2 info(strfmt('%1',b)); } exappl.quit(); }
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
Теги |
excel |
|
|