2

У меня есть база данных Access с некоторыми таблицами, которые ежедневно обновляются с некоторыми значениями. Мне нужно, чтобы в таблицах было поле ID которое генерируется автоматически, когда другие значения таблицы импортируются из Excel. Я хочу автоматизировать все, удерживая кнопку и писать код VBA. Прямо сейчас у меня есть форма, которая импортирует значение в таблицу, но она просто импортирует точные значения, которые у меня есть. Мне также нужен дополнительный столбец ID , который должен автоматически генерироваться при импорте. Пожалуйста, помогите мне.

Пример листа Excel:

ProductName | ProductValue
------------+--------------
ABC         | 76
SDF         | 87

ТАБЛИЦА ДАННЫХ

ID|ProductName| Product Value
--+-----------+--------------
1 | ABC       |76
2 | SDF       |87

Лист Excel обновляется каждый день с новым значением, и его необходимо поместить в базу данных Access с ID автоматически увеличивается. Таким образом, после ежедневного обновления значения увеличиваются с предыдущего значения.

Dim filepath As String

filepath = "E:\rt.xlsx"
If FileExist(filepath) Then
    DoCmd.TransferSpreadsheet acImport, , "TempfromExcel", filepath, True
    DoCmd.OpenQuery "qryAppend", acViewNormal

Else
    MsgBox ("File not found.")
End If

1 ответ1

0

Как указано в комментариях, лучший способ - установить в поле ID значение AutoNumber . Если у вас уже есть куча данных в этом поле, вам нужно будет сбросить это поле .

Установка AutoNumber

Как только это будет сделано, просто не включайте поле в запрос на добавление. Access автоматически заполнит любое следующее значение для каждой новой записи.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .