Anzeige
Archiv - Navigation
948to952
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
948to952
948to952
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

SQL Abfrage mit > als VBA Variable

SQL Abfrage mit > als VBA Variable
11.02.2008 15:20:00
Marco
Hallo,
ich versuche aus Excel VBA einen Parameter an eine SQL Abfrage im Excel VBA zu übergeben, bei dem ein Datum nach größer als verglichen wird, leider erfolglos.
Hier mal detailliert das Problem:
Termin ' ist die Variable welche ein beliebiges Datum enthalten kann
Code:
'Abfrage:
SqlString = _
"SELECT `Vers$`.Nr, `Vers$`.AG, Ver$`.VersNr " & _
"FROM `Vers$` " & _
"WHERE `Vers$`.termin1 <= ' " & Termin & " ') & _
"ORDER BY `Vers$`.Nr"
~f~
So funktioniert meine Abfrage aber leider nicht. Wie muss ich das Kriterium richtig im Where Parameter einbinden?
Mit Like und Parametern als String funktionierte dies so:
~f~(`Versuchsdatenbank$`.AuftragNr Like ' " & Jahrgang & "%')" & _
Nur nun habe ich ja jetzt ein Datum was verglichen werden muss, da wird es mit Like ja sicher nicht funktionieren, oder?
Es ist ein Stück Code aus Excel und die abgefragte DB ist eine Tabelle im Excel. Alle anderen Abfragen funktionieren bestens.
Danke für Hinweise.

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SQL Abfrage mit > als VBA Variable
11.02.2008 15:25:00
c0bRa
Hio...
Sicher dass es `sind und keine ' ?
Ansonsten fehlt dir ein " in der vorletzten Zeile:
VBA-Code aus Modul Modul1:
Option Explicit
Sub test()
    Dim sqlString As String
    Dim termin As String
    termin = "03.02.2008"
    sqlString = _
        "SELECT `Vers$`.Nr, `Vers$`.AG, Ver$`.VersNr " & _
        "FROM `Vers$` " & _
        "WHERE `Vers$`.termin1 <= ' " & termin & " ') " & _
        "ORDER BY `Vers$`.Nr"
    Debug.Print sqlString
End Sub

Rückmeldung nicht vergessen...
c0bRa
Komplexe Probleme haben einfache, leichtverständliche aber falsche Lösungen.

Anzeige
AW: SQL Abfrage mit > als VBA Variable
11.02.2008 15:42:00
Marco
Die " habe ich nur im Beispiel vergessen am Ende.
Bei dem Aufruf des Datenbanknamens muss ein ` und kein ' zum Einsatz kommen. Habe ich so erfolgreich wo übernommen.
Der Code von Dir führt daher ebenso zum Error: -Laufzeitfehler 1004 SQL Syntaxfehler.

AW: SQL Abfrage mit > als VBA Variable
11.02.2008 15:58:43
Tom
Hallo Marco,
wo machst du die Klammer auf, die du hinter "& Termin &" schließt?
Vielleicht liegt's daran?
Gruß
Tom

AW: SQL Abfrage mit > als VBA Variable
11.02.2008 16:18:00
Marco
OK. da habe ich beim Abschreiben des verkürzten Codes was vergessen, so müsste es richtig sein und es liegt nicht an der Klammer, da diese in meinem Hauptcode vorhanden ist.
SqlString = _
"SELECT `Vers$`.Nr, `Vers$`.AG, Ver$`.VersNr " & _
"FROM `Vers$` " & _
"WHERE (`Vers$`.termin1 <= ' " & Termin & " ') " & _
"ORDER BY `Vers$`.Nr"
So müsstes es nun aber passen. Nun müsste ich nur noch wissen was falsch ist, damit es auch funktioniert.

Anzeige
AW: SQL Abfrage mit > als VBA Variable
11.02.2008 17:58:00
Peter
Hallo Marco,
bei mir hat es mit einer Variablen ebenfalls nicht funktioniert, wohl aber so:


.termin1 <= DateSerial(Year(Termin), Month(Termin), Day(Termin))" }


Gruß Peter

AW: SQL Abfrage mit > als VBA Variable
11.02.2008 18:00:19
Peter
Hallo Marco,
die geschweifte Klammer zu am Ende muss natürlich weg, das ist ein Relikt aus dem Syntax Highlighter
Gruß Peter

154 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige