Holen Sie Spaltennamen aus einer Abfrage Tabelle
Mit normalen Tabellen kann ich den Zugriff auf die Spalte name mit dem
SELECT column_name FROM INFORMATION_SCHEMA_COLUMNS WHERE table_name = '" & Tbl & "' "
und es funktioniert...
aber während der Ausführung von VBA-code brauche ich auch zum abrufen von Spalten-Namen nicht aus Tabellen, sondern aus der Tabelle resultierenden nachdem Sie eine Abfrage, wie kann ich das in VBA?
Dim Qry as QueryDef
Dim MrgTbls as QueryDef
Dim T1 as String
Dim T2 as String
Dim SQLJoin as String
...
Set MrgTbls = CurrentDb.CreateQueryDef(Qry.Name, SQLJoin)
...
und später möchte ich eine Abfrage erstellen, die wie
SELECT column_name FROM INFORMATION_SCHEMA_COLUMNS WHERE table_name = 'MrgT'
gibt nichts, da die Tabelle MrgT ist nicht in INFORMATION_SCHEMA_COLUMNS, im Gegensatz zu anderen Tabellen.
Können Sie weitere Details hinzufügen? Welche Objekte sind Sie mit der Zusammenarbeit? E. g. rs.Felder(i).name
Nebenbei
Wie verwenden Sie
Nebenbei
Dim T1, T2, SQLJoin As String
definiert zwei Variablen vom Typ Object
nur eine Art String
. Auch, wenn QryName
ist der Typ QueryDef
, wie können Sie zuweisen eines Strings zu QryName
?Wie verwenden Sie
SELECT column_name FROM INFORMATION_SCHEMA_COLUMNS
auf eine Access-Datenbank?InformationsquelleAutor user_C | 2013-07-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
Um den Spaltennamen einer
QueryDef
verwenden, können Sie dieFields
Sammlung:Alternativ können Sie auch eine Reine SQL-und die
MSysObjects
undMSysQueries
system-Tabellen. Sehen hier für details über die Struktur dieser Tabelle.InformationsquelleAutor Zev Spitz