Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1512to1516
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

SQL durchsuchen

SQL durchsuchen
08.09.2016 07:17:39
baschti007
Hallo Ihr einen guten Morgen euch =)
Gibt es eine schnellere Möglichkeit einen Wert aus einer SQL Datenbank Tabelle1 zusuchen und dann in SQL Datenbank Tabelle2 den Wert zufiltern und die Werte ausgeben als wie ich es bis jetzt mache?
Gruß Basti

Sub Con1()
Dim con As New ADODB.Connection
Dim Rs As New ADODB.Recordset
Dim getCorpID As String
Dim SuchID As String
On Error GoTo err
con.ConnectionString = "Provider=SQLOLEDB;Data Source=ServerName;Initial Catalog=DATENBANK;User  _
ID=Benutzer;Password=PW;" 'SQL Verbindung herstellen
con.Open
Set Rs.ActiveConnection = con
getCorpID = "SELECT *  FROM dbo.Tabelle1" ' Recordset zu Datenbank Tabelle1
Rs.Open getCorpID, con, adOpenStatic, adLockReadOnly, adCmdText
Rs.Find "Seriennummer = '" & Range("A1").Value & "'" 'Ich Habe die SerienNummer in A1 und suche  _
diese um danach die ID zunutzen
SuchID = Rs!ID
Rs.Close
Set Rs = Nothing
Set Rs.ActiveConnection = con
getCorpID = "SELECT *  FROM dbo.Tabelle2" ' Recordset zu Datenbank Tabelle2
Rs.Open getCorpID, con, adOpenStatic, adLockReadOnly, adCmdText
Rs.Filter = "LinkedID = '" & SuchID & "'" ' Ich suche nun die Gefundene ID um alle einträge zu  _
finden die unter LinkedID stehen
s = 3
Z = 7
Do While Not Rs.EOF ' Hier werden alle Feld aus dem Rs ausgelesen die in Field 5 ein Falsch  _
stehen haben
If Rs.Fields(5) = FALSCH Then
For i = 0 To Rs.Fields.Count - 1
Debug.Print Rs.Fields(i)
Cells(Z, s) = Rs.Fields(i)
s = s + 1
Next
Z = Z + 1
s = 3
End If
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
err:
con.Close
Set con = Nothing
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Geschlossen!!
08.09.2016 07:52:24
baschti007
Hallo Leute =)
Ich hab es selber gefunden ich öffne den Rs gleich so.

getCorpID = "SELECT *  FROM dbo.Tabelle1 WHERE SeriennummerPumpe = '" & Range("A1").Value & "'"  _
Dann kann ich mir das Rs.find schenken
Gruß Basti
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige