Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Probleme mit Select

Begonnen von prapo, Mai 25, 2016, 12:23:46

⏪ vorheriges - nächstes ⏩

prapo

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


MaggieMay

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?
Freundliche Grüße
MaggieMay

PhilS

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.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

DF6GL

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.


Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

prapo

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

Beaker s.a.

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
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)