04. Для управления счетчиком в таблицах можно использовать эти функции
Private Sub butExecute_Click()
Dim idx As Index, fld As Field
On Error Resume Next
'Удаляем все лишнее
tdf.Indexes.Delete "PrimaryKey" 'Удаляем индекс
tdf.Indexes.Refresh 'Сохраняем изменение
tdf.Fields.Delete "Код" 'Удаляем поле
tdf.Fields.Refresh 'Изменяем таблицу
Err.Clear 'Очищаем от ошибки, если нет поля
On Error GoTo 999
'Создаем поле "Счетчик" с новыми значениями
Set fld = tdf.CreateField("Код") 'Создание
fld.Type = dbLong 'Тип поля
fld.Properties("Attributes") = dbAutoIncrField 'Назначение атрибутов счетчика
tdf.Fields.Append fld 'Добавить поле
tdf.Fields.Refresh 'Изменяем таблицу
'Создаем индекс
Set idx = tdf.CreateIndex("МойИндекс") 'Создаем индекс
idx.Fields.Append idx.CreateField("Код") 'Добавляем поле в индекс
idx.Name = "PrimaryKey" 'Изменение имени индекса
idx.Primary = True 'Атрибут ключа
tdf.Indexes.Append idx 'Добавить индекс
tdf.Indexes.Refresh 'Сохраняем индекс
'Сообщение
MsgBox "Создан новый счетчик 'Код'!", vbInformation
Exit Sub
999:
MsgBox Err.Description, vbCritical, "Создание поля"
Err.Clear
End Sub
'==============================================================
' Удаляем поле и индекс
Private Sub butDelete_Click()
On Error Resume Next
tdf.Indexes.Delete "PrimaryKey" 'Удаляем индекс
tdf.Indexes.Refresh 'Сохраняем изменение
Err.Clear
MsgBox "Индекс PrimaryKey удален!", vbInformation
End Sub