ник: Анатолий (Киев)
MYDB.TableDefs.Delete Tabl.Name
работает, но не с первого раза. Приходится его несколько раз запустить, чтобы он все таблицы удалил (если кто знает, почему так, напишите). |
Когда вы удаляете элемент из коллекции, то индексы оставшихся объектов перенастраиваются. Например, после удаления элата с индексом 2 - 3-й элементт становится 2-м, а 4-й - 3-м.
Если это делается в цикле по коллекции в прямом направлении (по возрастанию индекса), то после удаления 2-го элемента следующим будет 4-й, а 3-й "затаился".
Поэтому множественное удаление элементов коллекции нужно выполнять в обратном цикле, т.е.:
For i = MYDB.TableDefs.Count-1 To 0 Step -1
MYDB.TableDefs.Delete MYDB.TableDefs(i).Name
Next
|