Добавление записей в таблицу с помощью ACCESS VBA

#vba #ms-access

#vba #ms-access

Вопрос:

Мой код:

 Public Sub ImportCommonFields()

    Set rs1 = CurrentDb.OpenRecordset("Imported Table" amp; " " amp; TableCtr)
    Set cf = CurrentDb.OpenRecordset("CommonFields")
    
    cf.AddNew
    cf("FieldNames") = rs1.Fields

    cf.Update
    Set fld = Nothing

End Sub
  

В настоящее время я получаю имена столбцов (полей) из таблицы в rs1 и хотел бы импортировать их в существующую таблицу «CommonFields» в столбце «Имена полей».

Комментарии:

1. Не совсем понятно, что вы хотите сделать. Вы хотите добавить запись в cf для каждого поля в rs1 ? Если это так, то вам нужно перебрать rs1 поля и вызвать cf.AddNew для каждого поля.

2. Вы хотите сохранить имена полей одной таблицы в одном столбце другой таблицы? Почему — какова конечная цель?

3. Я думаю, что OP просто хочет добавить записи из таблицы определенного столбца в другую таблицу.

4. Привет, ребята, правильно. Таблица Импортированная таблица всегда будет меняться, и я хотел бы сохранить все имена столбцов всех таблиц, которые были импортированы

Ответ №1:

Цикл сбора полей:

 Public Sub ImportCommonFields()

    Dim fld     As DAO.Field

    Set rs1 = CurrentDb.OpenRecordset("Imported Table" amp; " " amp; TableCtr)
    Set cf = CurrentDb.OpenRecordset("CommonFields")
    
    For Each fld In rs1.Fields
        cf.AddNew
        cf("FieldNames").Value = fld.Name
        cf.Update
    Next

    cf.Close
    rs1.Close

    Set fld = Nothing

End Sub