Mehrere DB abfrage

Hallo,

ich habe hier ein VBA-Code, wo mehrer Datenbanken durchsucht werden soll:

Code:
Set DB = CurrentDb()

Set rs = DB.OpenRecordset(„KundenBTG“, dbOpenTable)
Set rs = DB.OpenRecordset(„KundenWWM“, dbOpenTable)
Set rs = DB.OpenRecordset(„KundenALS“, dbOpenTable)

rs.Index = „Tel“
rs.Seek „=“, strSuch
If Not rs.NoMatch Then…

Hier wird immer nur die letzte Datenbank durchsucht.
Wie kann ich es machen dass alle Datenbanken in einer Zeile angezeigt werden ? So funzt es leider nicht ?

Code:

Set rs = DB.OpenRecordset(„KundenBTG, KundenWWM , KundenALS“, dbOpenTable)

Danke im voraus.
danke im voraus. Gruß, Marsi

Hallo, Marsi!

ich habe hier ein VBA-Code, wo mehrer Datenbanken durchsucht
werden soll:

Wirklich Datenbanken oder nicht doch eher Tabellen?

Set rs = DB.OpenRecordset(„KundenBTG“, dbOpenTable)
Set rs = DB.OpenRecordset(„KundenWWM“, dbOpenTable)
Set rs = DB.OpenRecordset(„KundenALS“, dbOpenTable)

Klar, weil mit der zweiten Zuweisung der Inhalt der ersten Zuweisung und dann mit der dritten der Inhalt der zweiten überschrieben wird. Ist genauso wie

x = 1
x = 2
x = 3

wodurch x nur den Wert 3 zugewiesen bekommt.

Hier wird immer nur die letzte Datenbank durchsucht.
Wie kann ich es machen dass alle Datenbanken in einer Zeile
angezeigt werden ? So funzt es leider nicht ?

Code:
Set rs = DB.OpenRecordset(„KundenBTG, KundenWWM , KundenALS“,
dbOpenTable)

mit Set rs = DB.OpenRecordset(„SELECT * FROM KundenBTG, KundenWWM, KundenALS“) bekommst Du die drei Tabellen als eine große Tabelle, die ungefähr so aussieht:

FelderTab1 FelderTab2 FelderTab3
Werte Tab1
...
Werte Tab1
 Werte Tab2
 ...
 Werte Tab3
 ...

Wenn Du Deine Suche dann über ein Feld machen willst, welches in allen drei Tabellen vorkommt, musst Du in diesen drei Feldern der neuen Gesamttabelle suchen. Am besten betrachtest Du Dir das Ergebnis der SELECT-Abfrage von oben mal in Access oder so.
Wenn alle Tabellen den gleichen Aufbau haben, kannst Du auch eine UNION-Abfrage verwenden, um die Gesamttabelle zu erzeugen. Dann kannst Du auch über nur ein Feld suchen.
Schau ggf. in der Hilfe (am besten Access oder eine sonstige SQL-Dokumentation, weniger reines VB) unter SELECT und UNION nach.

Gruß, Manfred

Danke :smile: und frohe Weihnachten
e