Datenbankabfrage nach Datum per SQL aus VBA
31.07.2007 08:52:19
Riediger
ich habe bei meiner Excel-Version ein seltsames Phänomen, das mich verzweifeln lässt.
Ich möchte aus einer Datenbank Datensätze nach einem Datum auslesen. Dabei akzeptiert Excel allerdings nur entweder die Abfrage nach Jahr und Monat, oder Jahr und Tag...usw nur nicht die Abfrage nach Jahr, Monat und Tag? Ich kappiers einfach nicht - könnt Ihr mir bitte helfen ?
Hier ein Auszug aus meinem Code
Sub Auswertung()
Dim seltag1, seljahr1, selmonat1 As Integer
dsn = UCase(UserForm1.TextBox1.Value)
von_datum = UserForm1.TextBox2.Value
seltag1 = Day(UserForm1.TextBox2.Value)
selmonat1 = Month(UserForm1.TextBox2.Value)
seljahr1 = Year(UserForm1.TextBox2.Value)
......
Sheets("Abfrage2").Select
With ActiveSheet.QueryTables.Add(Connection:=Datenbankname, Destination:= _
Range("A1"))
.CommandText = Array("SELECT bab_typ,bab_nr,te,tr,rueckm_menge,weeks(fruehest_start)KW, " & _
"fruehest_start,status,year(fruehest_start) from bab_afo " & _
"where (year(fruehest_start) >= " & seljahr1 & ") and (month(fruehest_start) >= " & selmonat1 & " )and (day(fruehest_start) >= " & seltag1 & " ) and bab_typ=20 and status <> 99 order by KW ")
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With
Das Problem liegt in der Where Klausel, die Fehlermeldung lautet: Laufzeitfehler 13 - Typen unverträglich
Vielen Dank schon mal vorab für Eure Mühen