15.11.2010, 10:57 | #1 |
Участник
|
Ошибки при экспорте в Эксель
добрый день коллеги! Сталкивался ли кто-нибудь со следующей проблемой,
при экспорте в Эксель, используя вызов в классе конструкцию типа: сomRange = excel.findRange(ComExcelDocument_RU::numToNameCell(3, _row)); comRange.CopyFromRecordset(rst); где COM rst = new COM('ADODB.Recordset'); выскакивает сообщение: Сообщение (10:51:20) Метод "CopyFromRecordset" в COM-объекте класса "Range" возвратил код ошибки 0x80004005 (E_FAIL), который означает: Общий сбой. обнаружено на большом очень тексте, хотя вручную в Эксель вставляется без ошибки.В чем может быть ошибка? |
|
15.11.2010, 12:21 | #2 |
Moderator
|
Цитата:
Данное ограничение замечено в Excel 2003/2003. Вроде, в более ранней Excel 2000 можно было аж 1823 символа, т.е. в 2 раза больше. Подозреваю, что двухкратное уменьшение связано с Юникодом. А, впрочем, почитайте сами. Наберите в Гугле строку поиска: "CopyFromRecordset 1823 911". Ссылок - масса. P.S. И вроде, в Excel 2007 всё уже починили и сняли это ограничение: Строка в Excel P.P.S. Сняли, да не совсем. В 2007 мне удалось вставить в ячейку 8203 символа, больше - ошибка. P.P.P.S. Итак: 911 characters in Excel 2003 - http://support.microsoft.com/kb/818808/en-us 8203 characters in Excel 2007 - http://support.microsoft.com/kb/832136/en-us Последний раз редактировалось Gustav; 15.11.2010 в 19:39. |
|
|
За это сообщение автора поблагодарили: johny77 (1). |
Теги |
excel, recordset, экспорт |
|
|