Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1112to1116
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten per VBA in SQL Datenbank

Daten per VBA in SQL Datenbank
Jürgen
Hallo zusammen,
Habe hier ein Makro, welches Daten aus den Spalten A, B und C eines Tabellenblattes in eine SQL Datenbank schreibt. Dieses funktioniert auch tadellos. Nun würde ich aber gerne vor dem INSERT prüfen, ob der jeweilige Datensatz bereits in der Datenbank vorhanden ist, da er ansonsten immer wieder reingeschrieben wird sobald das Makro gestartet wird.
Hat jemand eine Idee wie man das Lösen könnte?
Vielen Dank!
Gruß
Jürgen
P.S: Anbei der Code

Sub Insert()
Dim conn As New Connection
Dim rec As New Recordset
Dim comm As New Command
Dim ws As Worksheet
Bereich = "Test"
Set ws = ThisWorkbook.Worksheets("Tabelle1")
conn.Open "driver={SQL Server};" & _
"server=PCJV1;database=Rupp;"
Set comm.ActiveConnection = conn
For Zeile = 2 To Range("A27").End(xlUp).Row
SQLString = "INSERT INTO Aussenbestand (" _
& "Artikel, Lager, Bestand)" _
& " VALUES " _
& "('" & Range("A" & Zeile).Value & "'," _
& " '" & Range("B" & Zeile).Value & "'," _
& " '" & Range("C" & Zeile).Value & "')"
Debug.Print SQLString
comm.CommandText = SQLString
rec.Open comm
Next Zeile
conn.Close
Meldung = MsgBox("INSERT durchgeführt!", vbOKOnly)
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Daten per VBA in SQL Datenbank
06.11.2009 10:38:12
Born
Hallo Jürgen,
auf Basis welcher Kriterien soll denn die Prüfung erfolgen? Gibt es einen Index? Dann könntest Du vor dem Insert über eine SQL-Abfrage prüfen, ob dieser Index bereits exisitert und in diesem Fall Insert-Anweisung überspringen.
Ich hoffe, dies hilft Dir schon weiter.
Gruß,
M. Born
AW: Daten per VBA in SQL Datenbank
06.11.2009 10:42:58
Jürgen
Hallo Born,
Index habe ich keinen, könnte ich aber noch in die Datenbank einfügen.
Deine Idee ist gut, aber ich weiß nicht wie diese Prüfung im Code aussehen könnte.
Kannst du mir einen Codeschnipsel geben welcher das greifbarer macht?
Gruß
Jürgen
AW: Daten per VBA in SQL Datenbank
06.11.2009 11:45:27
Born
Hallo Jürgen,
irgendwas in der Art von "Select Indexfeld from Tabellenname where Indexfeld = Wert"
Das Ergebnis der Abfrage muss dann in VBA mit dem jeweiligen Wert abgeglichen werden, bevor die Insert-Anweisung ausgeführt wird. Mein SQL ist nicht allzu gut, als dass ich Dir den vollständigen Code liefern könnte, aber zumidest der Weg sollte jetzt klar sein.
Gruß,
M. Born
Anzeige
AW: Daten per VBA in SQL Datenbank
06.11.2009 12:32:00
Jürgen
Hallo Born,
Danke! Der Weg ist klar.
Ev. hat ja noch jemand eine Idee wie der Code dazu aussehen könnte....?
Vielen Dank!
Jürgen

88 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige