|
19.11.2003, 17:24 | #1 |
Участник
|
Вопрос:
Как (нужен кусочек кода) вытащить значения из ячейки Excell в Axapte посредством COM ? Примечание: писать в ексель получалось без проблем, а вот обратно ... что то не смог функцию найти. |
|
21.11.2003, 10:10 | #2 |
Участник
|
Код: SysExcelApplication sysExcelApplication; SysExcelWorksheet sysExcelWorksheet; SysExcelCell sysExcelCell; int row,col,k; str path = "C:\\Customers.xls"; ; sysExcelApplication = sysExcelApplication::construct(); sysExcelApplication.workbooks().open(path); if(!sysExcelApplication.workbooks()) throw error("Ошибка открытия файла!"); SysExcelWorksheet = sysExcelApplication.workbooks().item(1).worksheets().itemFromNum(1); if(!SysExcelWorksheet) throw error("Книга пустая"); ttsbegin; custTable.selectForUpdate(true); for(row = 2; row <= 100; row++) { sysExcelCell = SysExcelWorksheet.cells().item(row,1); custTable.clear(); custTable.AccountNum = num2str0(row,1); custTable.Name = SysExcelWorksheet.cells().item(row,2).value().bStr(); custTable.INN_RU = SysExcelWorksheet.cells().item(row,3).value().bStr(); /************************************* прочий код здесь **************************************/ custTable.insert(); } ttscommit; sysExcelApplication.workbooks().close(); |
|
21.11.2003, 10:17 | #3 |
Шаман форума
|
Также для тех, кому лень программировать, стандартная примочка для обмена с Екселем
http://www.atlasxl.com.au/AtDownload.htm Можно у них код посмотреть...
__________________
All information in this post is strictly confidential. If you have read it in error, please forget it immediately. |
|
27.11.2003, 16:51 | #4 |
Участник
|
спасибо.
|
|
30.03.2005, 11:06 | #5 |
drc
|
<div class='XPPtop'>X++</div><div class='XPP'>
[color=:blue]for[/color](row = 2; row <= 100; row++) { }</div> А как достоверно узнать конец Excel-файла? |
|
30.03.2005, 11:29 | #6 |
Модератор
|
А нет его. Разве что почти достоверно - по определенному количеству пустых строк. Если есть выделенная область (selection) - ее размеры получаются тривиально
__________________
-ТСЯ или -ТЬСЯ ? |
|
30.03.2005, 15:07 | #7 |
Участник
|
... Нет-то его нет, но если у Вас есть прямоугольная (или какая-то разумная, заполненная ячейками) область листа, то поступить можно, например, так (код на VBA for Microsoft Excel):
Код: Range("A1").Select Range(Selection, Selection.End(xlDown)).Select |
|