MyTetra Share
Делитесь знаниями!
удалить запрос по типу
16.03.2019
23:43
Текстовые метки: VBA, DAO, QueryDefs.Delete, УДАЛИТЬ ЗАПРОС
Раздел: !Закладки - VBA - Access - DAO

'======================================================================================

'##### удалить запрос по типу

'

Sub test_FnDelUpdQuery()

Dim strPathDb As String

Dim oDb As DAO.Database 'база с итоговыми таблицами

strPathDb = w_other.Fn_StrLastPathRead("PathDb")

Set oDb = OpenDatabase(strPathDb)

Call FnDelUpdQuery(oDb)

End Sub

'--------------------------------------------------------------------------------------

Sub FnDelUpdQuery(ByVal db As DAO.Database, _

ByVal intType As Integer)

'http://www.cyberforum.ru/ms-access/thread1513856.html

'Можно и так. Надо построить цикл по всей коллекции QueryDefs, _

сравнить с известным типов запросов Update, это тип=48, _

удалить их и обновить коллекцию QueryDefs. Цикл надо строить _

в обратном порядке от большего номера к меньшему.

'6 Удаление -32

'5 Перекрестный -16

'4 Обновление -48

'3 Добавление -64

'2 Создание таблица - 80

'1 Выборка -0

Dim qdf As QueryDef, i

For i = db.QueryDefs.Count - 1 To 0 Step -1 'Цикл по коллекции запросов

Set qdf = db.QueryDefs(i) 'Создание вспомогательного объекта коллекции

Debug.Print qdf.Name & " - " & qdf.Type 'Распечатка имен запросов и их типов

If qdf.Type = intType Then 'Проверка на нужный тип запросов

db.QueryDefs.Delete qdf.Name 'Удаление объекта из коллекции

End If

Next

db.QueryDefs.Refresh 'Обновление все коллекции запросов

End Sub

'======================================================================================

Так же в этом разделе:
 
MyTetra Share v.0.52
Яндекс индекс цитирования