|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
Hi! Прошу помощи, никак не соображу что делать. Решаю примитивную, в сущности задачу: разбиваю таблицу в WORD на две, красный заголовок остается в первой, остальная часть уходит во вторую. При этом во второй таблице формируется дополнительная строка с цифрами 1,2,3... и т.д. до конца и назначается заголовком, повторяемым на каждой странице. Ну то есть оформление по ГОСТ, когда надо не весь заголовок, а только номера колонок повторять. Сделал три тестовые таблицы: первая простая, вторая с объединенными ячейками в теле таблицы, третья с объединенными ячейками и в теле и в заголовке. Так вот: первая таблица отрабатывает на ять, а на второй, в момент t.Split вываливается ошибка: Run-time error '-2147024809 (80070057)' Объект был удален. По простоте душевной я решил, что таблица действительно удалилась, и вставил перед t.split строчку Set t = cm.Scope.Tables(1), которая ничего не дала. Пошаговое исполнение выявило, что прямо перед исполнением проблемного t.split t указывает на валидную таблицу, в окне immediate правильно исполняется ?t.rows.count. Порыскал в гугле, понял что ошибка скорее системная, чем vba'шная. Может кто нибудь подсказать, как продраться сквозь эту бяку? Код прилагаю. Если требуется док, на котором был тест, то подскажите, как его приаттачить к сообщению. Код: 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. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82.
Заранее огромное спасибо всем откликнувшимся. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2020, 22:47 |
|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
Вдогонку: увидел как приложить файл, прикладываю doc. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2020, 22:48 |
|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
Удаление объектов из коллекции при ее итерировании через foreach ни к чему хорошему никогда не приводит. Для безопасного удаления в таких случаях используется for, причем от конечного индекса элемента к начальному ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2020, 23:28 |
|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
Хотя, вижу GoTo l1 Это, конечно, жесть, но значит дело не в этом ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2020, 23:30 |
|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
iMerlin Порыскал в гугле, понял что ошибка скорее системная, чем vba'шная. Может кто нибудь подсказать, как продраться сквозь эту бяку? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2020, 23:59 |
|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
Shocker.Pro но всё же, раз такое дело, попробуй цикл с конца без goto Увы, как и предполагалось, все то же самое на том же самом месте. Да и какое отношение цикл по коллекции комментариев который Вам не понравился имеет к разрезанию таблицы, где происходит ошибка? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2020, 09:51 |
|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
iMerlin Да и какое отношение цикл по коллекции комментариев iMerlin Код: vbnet 1.
iMerlin Объект был удален. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2020, 09:55 |
|
Runtime error 80070057
|
|||
---|---|---|---|
#18+
Все, решил. Всем, кто потратил время большое спасибо. В чем конкретно ошибка так и не понял, подозреваю, что из-за объединенных ячеек таблицы где-то внутри функции splittable(n) при попытке обратиться к строке n идет неперехваченная разработчиками Word ошибка, перехватывается где - то дальше по стеку и номер ошибки не соответствует тому, что реально ее вызвало. Решил обращением к Selection.SplitTable. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2020, 09:56 |
|
|
start [/forum/topic.php?fid=61&msg=39989677&tid=2171848]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 307ms |
total: | 431ms |
0 / 0 |