Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
VBA+Excel+открытие dbf файла более 65000 строк
|
|||
|---|---|---|---|
|
#18+
Помогите решить проблему! В dbf файле около 400 тыс. строк, необходимо его открыть (при выполнении макроса) в Excel так, чтобы при открытии его содержимое делилось на листы. В среднем получается 7 листов. Пока через специальный dbf редактор дробиться на более мелкие dbf, а потом открывается в Excel и сливается в одну книгу, что достаточно трудозатратно. Код для разбивки на листы я написала, на dbf менее 65000 он прекрасно и быстро работает, но по всей видимости ADODB.Recordset не поддерживает такое кол-во строк, потому что при запуске макроса на большом файле выпадает ошибка: "Run-Time Error '-2147467259 (80004005)' Automation Error Неопознанная ошибка" Что можно придумать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 09:13 |
|
||
|
VBA+Excel+открытие dbf файла более 65000 строк
|
|||
|---|---|---|---|
|
#18+
мысли вслух: нигде тип Integer в коде не используется ? в бейсике под него отводится два байта = 65535 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 10:05 |
|
||
|
VBA+Excel+открытие dbf файла более 65000 строк
|
|||
|---|---|---|---|
|
#18+
Omela, Вы бы код выложили, а то так сходу трудно сказать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 10:35 |
|
||
|
VBA+Excel+открытие dbf файла более 65000 строк
|
|||
|---|---|---|---|
|
#18+
Omelaно по всей видимости ADODB.Recordset не поддерживает такое кол-во строк, ну вот это совсем не очевидно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 11:51 |
|
||
|
VBA+Excel+открытие dbf файла более 65000 строк
|
|||
|---|---|---|---|
|
#18+
BION, Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. это код из кнопки... открывается файл tab.dbf из директории C:\EXPORT\ заполняются заголовки и содержимое файла в Excel. При достижении 65000 записей идет добавление нового листа и продолжение файла. На файлике до 30 тыс. записей работает хорошо. Разбивала по 5 тыс. записей по листам. Стала на большом файле тестить - сразу ошибка выпала. Debug на строке: Set rs = .Execute("SELECT * FROM tab") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 13:00 |
|
||
|
VBA+Excel+открытие dbf файла более 65000 строк
|
|||
|---|---|---|---|
|
#18+
возможно ошибка связана с отсутствием памяти для рекордсета или истечение таймаута попробуйте поигратся параметрами TimeOut - на конекшене CursorLocation - на рекордсете I Have Nine Lives You Have One Only THINK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 14:31 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=36212203&tid=2160559]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 377ms |

| 0 / 0 |
