|
Ошибка: <Method 'Cells' of object '_Global' failed> при проверке количества строк
|
|||
---|---|---|---|
#18+
Добрый день! Есть код в Access, который открывает Excell-файл и загружает из него строки в свою таблицу. Перед загрузкой стоит строка проверки количества строк в Excel: Код: vbnet 1.
Если код запустить первый раз, то он отрабатывает успешно. При этом, в процессах Windows появляется новый процесс: EXCEL.EXE. Почему-то после завершения процедуры этот процесс не закрывается (хотя есть xlt.Close (False)). Если сразу снова запустить эту же процедуру, то возникает ошибка: < Method 'Cells' of object '_Global' failed > на строке: Код: vbnet 1.
При этом, естественно, в процессах появился второй EXCEL.EXE, который не закрылся из-за ошибки. Но если не удалять эти два процесса EXCEL.EXE, а перезапустить клиента Access и затем процедуру, то всё работает корректно, процедуру можно запускать несколько раз подряд, при этом, после её отработки второй процесс EXCEL.EXE успешно открывается и закрывается, а первый просто висит... Если НЕ перезапускать клиента Access, а в диспетчере завершить все процессы EXCEL.EXE и запустить процедуру, то появится другая ошибка: < The remote server machine does not exist or is unavaliable >. И наконец, если перезапустить клиента и удалить ВСЕ процессы EXCEL.EXE, то опять первый раз отработает корректно... Просьба помочь разобраться, в чём суть ошибки, почему при (с виду) одних и тех же условиях, код то работает, то нет. Может я неправильно закрываю 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. 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. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2017, 08:40 |
|
Ошибка: <Method 'Cells' of object '_Global' failed> при проверке количества строк
|
|||
---|---|---|---|
#18+
nik.anПеред загрузкой стоит строка проверки количества строк в Excel: Код: vbnet 1.
Угу... а вот если бы было явное указание, в какой книге да на каком листе использовать Cells... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2017, 08:49 |
|
Ошибка: <Method 'Cells' of object '_Global' failed> при проверке количества строк
|
|||
---|---|---|---|
#18+
Заменил строку на: Код: vbnet 1.
Если запустить в самый первый раз - успешно исполняется, а если сразу же второй раз, то ошибка (но правда другая): Subscript out of range Если перезапустить клиента (не удаляя процесс Excel) - снова работает нормально, притом подряд несколько раз запускать можно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2017, 09:59 |
|
Ошибка: <Method 'Cells' of object '_Global' failed> при проверке количества строк
|
|||
---|---|---|---|
#18+
Akinanik.anПеред загрузкой стоит строка проверки количества строк в Excel: Код: vbnet 1.
Угу... а вот если бы было явное указание, в какой книге да на каком листе использовать Cells... Спасибо! В итоге Ваша версия оказалась верной! Ещё раз переделал строку на: Код: vbnet 1.
Стало работать корректно. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.09.2017, 13:07 |
|
|
start [/forum/topic.php?fid=45&fpage=67&tid=1612093]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
others: | 303ms |
total: | 457ms |
0 / 0 |