vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Daten aus Excel in Access aus- und einlesen 
Autor: Bloob
Datum: 28.05.08 20:02

Hallo!
Ich hoffe Ihr könnt mir bei folgendem Problem helfen.

Ich möchte gern die Daten einer Exceltabelle mit den Daten einer Accesstabelle abgleichen und ggf. die Exceltabelle aktualisieren.
Der Hindergrund ist, dass mehrere Benutzer der Daten kein Access zu Verfügung haben und eigentlich auch nur einen Teil der Daten sehen müssen. Da es häufiger zu Updates der Accessdatenbank kommt, muss auch die Exceltabelle angepasst werden.
Dazu öffne ich eine Verbindung zur Exceltabelle und lese die Daten aus. Das Recodset wird verglichen und die fehlenden Daten hinzugefügt.
Nun das Problem: Wie kann ich die Daten in die Exceltabelle übernehmen, ohne explizit ein neuer Excel-Object zu erstellen? Ich dachte mit rs.Update wird die Aktualisierung automatisch vorgenommen.

   Dim Conn As ADODB.Connection
 
   Dim rs As ADODB.Recordset
   Dim sExcelFile As String
 
  ' vollständiger Pfad zur Excel-Datei
  sExcelFile = "F:\Test2.xls"
 
  ' Datenbank öffnen (Excel-Datei)
  Set Conn = New ADODB.Connection
  Conn.CursorLocation = adUseClient
 
  Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Extended Properties=Excel 8.0;" & _
    "Data Source=" & sExcelFile & "; User ID=Admin;"
 
 
  ' Recordset erstellen und öffnen
  Set rs = New ADODB.Recordset
  rs.CursorLocation = adUseClient
  rs.CursorType = adOpenKeyset  
  rs.LockType = adLockBatchOptimistic 
  rs.Open "[Liste$A1:D4]", Conn, , , adCmdTable
 
rs.MoveFirst
Do While Not rs.EOF
    If rs!Tab1 = "TestName" Then
        ' Name bereits Vorhanden
    Else
        rs.AddNew
            rs!Tab1 = "NameNeu"
            rs!Tab2 = "PLZ1"
            rs!Tab3 = "AGST"
            rs!Tab4  = "m"
        rs.Update
    End If
    rs.MoveNext
Loop
 
rs.MoveFirst
Do
Debug.Print rs!Tab1, rs!Tab2, rs!Tab3, rs!Tab4
rs.MoveNext
Loop Until rs.EOF = True
 
Conn.Close
 
ErrHdl:
    If Not Conn Is Nothing Then
        If Conn.State = adStateOpen Then Conn.Close
    End If
    Set Conn = Nothing
End Sub
Danke schonmal im Voraus!
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Daten aus Excel in Access aus- und einlesen842Bloob28.05.08 20:02

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel