Hallo zusammen,
ich bin Access-Neuling und steh gerade aufm Schlauch. Ich versuche mich gerade an einer einfachen Select-Anweisung, aber es klappt nicht.
Private Sub Test_Click()
Dim Vermittler As String
Vermittler = SELECT VermittlerName, Email FROM tblVermittler
MsgBox ("Test: " & Vermittler)
End Sub
Wenn ich die Prozedur aufrufe, dann kommt in der MsgBox ,,Test: SELECT VermittlerName, Email FROM tblVermittler"
Wenn ich die Anführungszeichen weglasse, kommt als Fehlermeldung: ,,Fehler beim Kompilieren: Erwartet: Ausdruck"
Wo ist mein Denkfehler?
Danke für die Hilfe
Sabine
Hi,
Zitatdann kommt in der MsgBox
das glaube ich nicht, der SQL-Code muss in Gänsefüßchen gesetzt werden.
Was aber bezweckst du mit diesem Code, was hast du mit der Abfrage vor?
Zitat von: prapo am Mai 25, 2016, 12:23:46Wenn ich die Anführungszeichen weglasse, kommt als Fehlermeldung: ,,Fehler beim Kompilieren: Erwartet: Ausdruck"
Warum willst du die Anführungszeichen weglassen?
Mit den Anführungszeichen ist das schon der richtige Weg. Das Ergebnis ist aber erstmal nur der SQL-Text in deiner String-Variable. Wenn du die Abfrage ausführen willst um die Daten im Code zu verwenden, schau die mal die
OpenRecordset-Methode an. - Mit diesem Stichwort solltest du viele Beispiele finden, die das weitere Vorgehen verdeutlichen.
Hallo,
ZitatWo ist mein Denkfehler?
Der Fehler liegt darin, dass ein SQL-Statement (SQL-String) mit VBA-Code verwechselt, bzw. gleichgesetzt wird....
Einen SQL-String kann nicht vom VBA-Editor interpretiert werden, den kann nur die Jet-Engine (Datenbanksystem) verstehen.
Um hier das Abfrage-Ergebnis anzuzeigen, wechsel in den Abfrageentwurf und wähle dort das Fenster "SQL-Ansicht". Kopiere (schreibe) das Select-Statement ( SELECT VermittlerName, Email FROM tblVermittler ) in das Fenster und führe die Abfrage aus (--> Ausrufezeichen klicken).
Wenn Abfrage-Ergebnisse mit VBA weiter verarbeitet (in Variablen gespeichert) werden sollen, so muss das über eine der Domainenaggregatfunktionen (Dlookup() z. B.) oder mit Hilfe von Recordsets geschehen.
Hallo zusammen,
tut mir leid, dass ich mich erst jetzt melde, aber ich war die letzten Wochen krank.
Ich wird mich in den nächsten Tagen mit euren Antworten beschäftigen und mich bei Fragen noch mal melden. Vielen Dank schon mal.
Gruß Sabine
Hallo Sabine,
ZitatWenn ich die Prozedur aufrufe, dann kommt in der MsgBox ,,Test: SELECT VermittlerName, Email FROM tblVermittler"
Kaum zu glauben, das du mit dem Code überhaupt soweit kommst.
Ohne die "" um den String, worauf Maggie schon hingewiesen hat,
Vermittler = "SELECT VermittlerName, Email FROM tblVermittler"bekomme ich schon beim Kompilieren einen Syntaxfehler angezeigt.
Ansonsten verweise ich auf die restlichen Posts.
gruss ekkehard