Eine der Aufgaben, mit denen Excel- und Access-Benutzer konfrontiert sind, besteht darin, Daten zwischen Tabellen zu migrieren. Dazu können Sie VBA verwenden, eine leistungsstarke Programmiersprache, die in Excel und Access verfügbar ist. In diesem Artikel erfahren Sie, wie Sie Daten mithilfe von VBA aus Excel in eine MDB-Datei migrieren.
Zunächst müssen Sie die Beziehung zwischen Excel und Access konfigurieren. Erstellen Sie dazu eine neue MDB-Datei in Access und öffnen Sie sie. Wählen Sie dann in Excel die Registerkarte "Entwickler" aus und klicken Sie auf die Schaltfläche "Visual Basic". Im geöffneten Fenster erstellen wir ein neues Modul und fügen den folgenden Code ein:
Sub TransferDataToAccess()
' Verbindung mit einer Access-Datenbank herstellen
Dim db As Object
Set db = CreateObject("Access.Application")
db.OpenCurrentDatabase "C:\Dateipfad\Dateiname.mdb"
' Daten auswählen und übertragen
Dim rng As Range, rowcount As Long
Set rng = Sheets("Blatt1").UsedRange
rowcount = rng.Rows.Count
For i = 1 To rowcount
db.DoCmd.RunSQL "INSERT INTO Tabellenname (Feld1, Feld2, Feld3) VALUES ('" & rng.Cells(i, 1) & "','" & rng.Cells(i, 2) & "','" & rng.Cells(i, 3) & "')"'
Next i
' Schließen der Datenbankverbindung
db.CloseCurrentDatabase
Set db = Nothing
End Sub
Dieser Code öffnet die Access-Datenbank, wählt die Daten aus dem angegebenen Excel-Arbeitsblatt aus und überträgt sie in eine Tabelle in einer MDB-Datei. Bevor Sie den Code ausführen, müssen Sie ihn ersetzen "С:\Путь_к_файлу\Имя_файла .mdb" auf den Pfad und Namen Ihrer MDB-Datei und "Tabellenname" auf den Namen der Tabelle, in die die Daten migriert werden sollen.
Nachdem Sie den Code kopiert und konfiguriert haben, können Sie das Makro ausführen. Wählen Sie dazu in Excel die Registerkarte "Entwickler" aus, klicken Sie auf die Schaltfläche "Makros" und wählen Sie "TransferDataToAccess". Klicken Sie auf die Schaltfläche "Ausführen" und die Daten werden in die MDB-Datei übertragen.
In diesem Artikel haben wir uns eine Möglichkeit zum Migrieren von Daten aus Excel in eine MDB-Datei mit VBA angesehen. Mit VBA können Sie viele Aufgaben im Zusammenhang mit der Datenverarbeitung automatisieren und die Arbeit mit Excel- und Access-Programmen vereinfachen.
Excel to mdb vba: Daten zwischen Tabellen migrieren
In diesem Artikel werden wir uns mit VBA-Code in Excel und Access befassen, um Daten zwischen Tabellen zu migrieren. Dieser Prozess kann nützlich sein, wenn Sie Daten zwischen zwei Tabellen aktualisieren oder synchronisieren möchten.
Erstellen Sie zunächst zwei Tabellen: die Quelltabelle in Excel und die Zieltabelle in Access. In Excel können Sie eine neue Arbeitsmappe erstellen und die erforderlichen Spalten und Zeilen hinzufügen. Erstellen Sie in Access eine neue Datenbank und fügen Sie eine Tabelle mit denselben Feldern wie in Excel hinzu.
Öffnen Sie dann den VBA-Editor in Excel, indem Sie Alt+F11 drücken. Fügen Sie den folgenden Code hinzu, um Daten von Excel nach Access zu migrieren:
Sub TransferDataToAccess()Dim rs As ObjectDim cn As ObjectDim strDBPath As StringDim strSQL As String' Путь к базе данных AccessstrDBPath = "C:\путь_к_вашему_mdb_файлу"' Соединение с базой данныхSet cn = CreateObject("ADODB.Connection")cn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strDBPath' Инициализация записи данныхSet rs = CreateObject("ADODB.Recordset")' SQL запрос для вставки данных в таблицу в AccessstrSQL = "INSERT INTO [имя_таблицы_в_Access] ([столбец1], [столбец2], [столбец3]) " & _"VALUES (. )"' Проход по каждой строке в исходной таблице в ExcelFor i = 1 To Range("A1").End(xlDown).Row' Получение данных из ячеекstrColumn1 = Cells(i, 1).ValuestrColumn2 = Cells(i, 2).ValuestrColumn3 = Cells(i, 3).Value' Вставка данных в таблицу в Accessrs.Open strSQL, cnrs.AddNewrs("столбец1") = strColumn1rs("столбец2") = strColumn2rs("столбец3") = strColumn3rs.Updaters.CloseNext i' Закрытие соединения и освобождение ресурсовcn.CloseSet rs = NothingSet cn = NothingEnd Sub
Ersetzen Sie "C", bevor Sie diesen Code ausführen:\pfad zu unserer_mdb_datei" auf den Pfad zu Ihrer Access-MDB-Datei, und "[Name der Datenblattseite]" auf den Namen der Zieltabelle in Access.
Nachdem Sie diesen Code gespeichert und ausgeführt haben, werden die Daten aus der Tabelle in Excel in die Tabelle in Access übertragen.
Stellen Sie sicher, dass Sie die entsprechenden Daten in der Quelltabelle in Excel haben und dass die Spalten der Quelltabelle mit den Feldern der Zieltabelle in Access übereinstimmen.
Wenn Sie Daten aus einer Tabelle in Access zurück in eine Tabelle in Excel migrieren möchten, können Sie ähnlichen Code verwenden, indem Sie die Richtung ändern, in der die Daten übertragen werden.
Dies ist nur eine Möglichkeit, Daten zwischen Tabellen mithilfe von VBA nach Excel und Access zu migrieren. Abhängig von Ihren Anforderungen und Bedingungen können Sie auch SQL-Abfragen oder andere Methoden zur Datensynchronisierung verwenden.
VBA in Excel und Access
Mit Excel und Access können Sie mit VBA benutzerdefinierte Formulare, Berichte und Abfragen erstellen und Routineaufgaben wie Datenimport und -export, Datenverarbeitung und -analyse und vieles mehr automatisieren.
Mit VBA in Excel können Sie Makros erstellen, um Aktionen wie das Sortieren und Filtern von Daten, Berechnungen, das Erstellen von Diagrammen und Diagrammen sowie das automatische Ausfüllen von Formeln und das Formatieren von Daten durchzuführen. Darüber hinaus ermöglicht VBA die Integration von Excel in andere Microsoft Office-Anwendungen wie Word und PowerPoint sowie externe Datenquellen.
V Access, mit VBA können Sie benutzerdefinierte Formulare und Berichte erstellen und Tabellen, Abfragen und Makros erstellen oder ändern. Mit VBA können Sie komplexe Datenverarbeitungsvorgänge automatisieren, dynamische Berichte und Formulare erstellen und Access in andere Datenbanken und Anwendungen integrieren.
| Excel | Access |
|---|---|
| Makros zum Automatisieren von Aufgaben | Erstellen benutzerdefinierter Formulare und Berichte |
| Analyse und Datenverarbeitung | Erstellen und Bearbeiten von Tabellen, Abfragen und Makros |
| Integration mit anderen Office-Anwendungen | Automatisieren komplexer Datenverarbeitungsprozesse |
| Arbeiten mit externen Datenquellen | Erstellen dynamischer Berichte und Formulare |
Unabhängig davon, ob Sie mit Excel oder Access arbeiten, können Sie mit VBA-Kenntnisse die Effizienz Ihrer Arbeit erheblich steigern, komplexe Aufgaben vereinfachen und mehr Möglichkeiten für die Datenmanipulation und Prozessautomatisierung erhalten. Verwenden Sie VBA, um produktiver und erfolgreicher mit Excel und Access zu arbeiten.