![]() |
#1 |
Участник
|
![]()
Доброго дня.
Сторонняя программа дает Excel-файл. Я его порезал убрав лишнее. Файл в аттаче. Суть в том, что есть данные в первом столбце и нет во втором. И вот такой код есть: 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; ; 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++) { a = excells.item(row,1).value().double(); //info(strfmt('%1',a)); // строка 1 b = excells.item(row,2).value().double(); info(strfmt('%1',a)); // строка 2 info(strfmt('%1',b)); } exappl.quit(); } Во втором случае выводится ожидаемое. В первом же случае, вместо 0 (в ячейке 2-го столбца пусто) получаем данные из первого столбца. Если в файле во второй колонке проставить значения, а потом удалить - все опять корректно работает. Axapta 2009. В 3-й такой проблемы не наблюдаю. |
|
|
За это сообщение автора поблагодарили: S.Kuskov (2). |
Теги |
excel |
|
|