
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
コメントにもあるように、ID
フィールドをに設定するのが最善の方法ですAutoNumber
。そのフィールドにすでに大量のデータがある場合は、フィールドをリセットする。
それが完了したら、追加クエリにフィールドを含めないようにします。Access は、新しいレコードごとに次の値を自動的に入力します。