Anhängen von Werten aus Excel an eine Access-Tabelle mit automatisch generierter ID

Anhängen von Werten aus Excel an eine Access-Tabelle mit automatisch generierter ID

Ich habe eine Access-Datenbank mit einigen Tabellen, die täglich mit einigen Werten aktualisiert werden. Ich brauche in den Tabellen ein IDFeld, das automatisch generiert wird, wenn die anderen Werte der Tabelle aus Excel importiert werden. Ich möchte alles automatisieren, indem ich eine Schaltfläche behalte und einen VBA-Code schreibe. Im Moment habe ich ein Formular, das den Wert in die Tabelle importiert, aber es importiert nur die genauen Werte, die ich habe. Ich brauche auch eine zusätzliche Spalte, die IDbeim Importieren automatisch generiert werden muss. Bitte helfen Sie mir.

Beispiel für eine Excel-Tabelle:

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

DATENBANKTABELLE

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

Die Excel-Tabelle wird jeden Tag mit neuen Werten aktualisiert und diese müssen IDautomatisch inkrementiert in die Access-Datenbank eingegeben werden. Nach der täglichen Aktualisierung werden die Werte also vom vorherigen Wert aus inkrementiert.

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

Antwort1

Wie in den Kommentaren erwähnt, ist die beste Methode, das IDFeld als zu definieren AutoNumber. Wenn Sie bereits eine Menge Daten in diesem Feld haben, müssen SieFeld zurücksetzen.

Festlegen einer AutoNummer

Sobald dies erledigt ist, schließen Sie das Feld einfach nicht in Ihre Anfügeabfrage ein. Access füllt den nächsten Wert für jeden neuen Datensatz automatisch aus.

verwandte Informationen