|
Run-time error 9
|
|||
---|---|---|---|
#18+
Здравствуйте. В ВДА плохо разбираюсь. Использую функции написанные прошлым сотрудником. Есть функция, которая обновляет Excel файл. Код: vbnet 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. 40.
Код работал на Access 2003. Попробовал прокрутить его у себя дома на 2013 Accesse. Выдает ошибку: Run-time error 9: Subscript out of range. На строке: sheet1.ListObjects.Item(1).QueryTable.Refresh Подскажите в чем проблема. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2016, 14:48 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Есть таблица в Access. В ней 10000 строк. 5 столбцов.(Адрес, ЮрЛицо, Дата, Выручка, ИД) В ВБА сделал модуль. Который берет ИД 1. Создает таблицы с Адресом, ЮрЛицом, Выручкой и Датой, которые соответствуют этому ИД. Эти таблицы привязаны к Excel. И используются для заполнения документов. Я хотел перебором от 1 до 10000 создать разные 10000 файлов Excel. Может ошибка из-за того что я хочу обновить Excel файл который привязан к таблицам из этой же базы данных? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2016, 15:11 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Сделал создание таблиц с данными в другой базе, что бы избежать блокировку. Ошибка осталась. Код: vbnet 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. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2016, 16:19 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Не, тут ошибка не в данных и даже не в Аксессе и не в его версии. Данная строка имеет отношение исключительно к Экселю Надо полагать, что на домашнем компьютере, у вас другая версия не только Аксесса, но и Экселя. Ошибка означает, что в sheet1.ListObjects отсутствует Item с индексом 1. Либо используете не тот файл, либо проблема в версии Экселя. Тут мелькает периодически, что в новых версиях Экселя вроде как отказались от объектов ActiveX на листе, возможно, связано именно с этим, но я не сталкивался с этим, надеюсь, коллеги поподробнее подскажут. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2016, 16:24 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Shocker.Pro, Access более старый, но весь остальной офис 2013. Такой же как дома. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2016, 16:38 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
И пробовал сохранить в Excel 97. Тоже не помагло ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2016, 16:46 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Im_MaxRun-time error 9: Subscript out of range. На строке: sheet1.ListObjects.Item(1).QueryTable.Refresh Подскажите в чем проблема. Попробуйте sheet1.ListObjects.Item( 0 ).QueryTable.Refresh ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2016, 02:24 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
i45, Извиняюсь что долго не отвечал. Сильно нагрузили работой. Ваш совет не сработал. Все равно ошибка эта всплывает. Причем если зайти и обновить вручную, все работает без сбоев. Есть еще советы по моей проблеме. Нужно в налоговую отчитаться до 1 мая. Очень нужна помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 15:06 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Im_Max, Shocker.Pro давно дал ответ - явно нет Вашего ListObjects.Item(1) на листе. Сколько листов в книге вообще? Как называются? На всех ли, кроме того, где в названии есть "служ" есть таблицы? Попробуйте перед строкой Код: vbnet 1.
записать такую: Код: vbnet 1.
тогда для каждого листа Вам покажет сколько у Вас там объектов ListObjects ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 16:05 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
The_PristСколько листов в книге вообще? 3. На 1 листе ссылки на 5 таблиц из Access. На 2 листе акт, в котором используются данные из этих 5 таблиц. На 3 листе просто алгоритм. что бы числа переводить в текст. The_PristКак называются? 1,2, служ The_PristНа всех ли, кроме того, где в названии есть "служ" есть таблицы? Да. На листе 1 - 5 таблиц. На листе 2 нет таблиц, привязанных к Access. Но затык происходит на листе 1. The_Pristтогда для каждого листа Вам покажет сколько у Вас там объектов ListObjects Выпадает ошибка RunTime 438. Но если навести мышкой в режиме Дебаг на sheet1.ListObjects.Count, то всплывает подсказка: "sheet1.ListObjects.Count=5" ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 16:19 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Im_MaxВыпадает ошибка RunTime 438.Мой косяк. Забыл свойство указать: Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:14 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Im_MaxНа листе 2 нет таблицА вот как раз это и является причиной изначальной ошибки. У Вас же таблицы судя по коду просматриваются на всех листах, кроме "служ"(точнее содержащих "служ"). Попробуйте этот блок Код: vbnet 1. 2. 3. 4. 5. 6. 7.
записать так: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:16 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
The_PristIm_MaxВыпадает ошибка RunTime 438.Мой косяк. Забыл свойство указать: Код: vbnet 1.
Пишет: на листе 1 5 таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:29 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
The_PristIm_MaxНа листе 2 нет таблицА вот как раз это и является причиной изначальной ошибки. У Вас же таблицы судя по коду просматриваются на всех листах, кроме "служ"(точнее содержащих "служ"). Попробуйте этот блок Код: vbnet 1. 2. 3. 4. 5. 6. 7.
записать так: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
Заработало! Файлы обновляются. Перебор идет. Только один недочет. Как я уже писал, привязка на листе 1 идет к 5 таблицам. В первой Дата, во второй Адрес подразделения и т.д. Они вставляются в разные места на листе 2. Так вот, идет обновление только первой таблицы с датой. Она же обновляется и на листе 2. Остальные 4 таблицы остаются неизменными. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:39 |
|
Run-time error 9
|
|||
---|---|---|---|
#18+
Im_Max, Вполне возможно, что здесь Код: vbnet 1. 2. 3. 4.
надо изменить так: Код: vbnet 1. 2. 3. 4. 5. 6.
Естественно, вначале кода надо объявить новую переменную: Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 19:18 |
|
|
start [/forum/topic.php?fid=60&fpage=22&tid=2155551]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
74ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 10ms |
total: | 169ms |
0 / 0 |