collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 47
  • Punkt Versteckte: 2
  • Punkt Mitglieder: 4
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 13927
  • stats Beiträge insgesamt: 66052
  • stats Themen insgesamt: 8909
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Werte aus der Combobox in Unterformular übertragen  (Gelesen 1277 mal)

Offline lissi1991

  • Newbie
  • Beiträge: 20
Werte aus der Combobox in Unterformular übertragen
« am: Februar 04, 2018, 13:37:42 »
Hallo liebe community,

ich habe folgendes Problem:

Im Hauptformular befindet sich eine Combobox, die über eine Abfrage Werte aus einer Tabelle entnehmen soll. Diese Abfrage ist eine Select Distrinct Abfrage.
Die gefilterten Werte sollen in einem Unterformular angezeigt werden.
Leider funktioniert das mit meinem Code nicht. Es erscheint Syntaxfehler 3075 fehlender Operator. Beim Debuggen bleibt er bei .Filter = String stehen.

Private Sub cboMonat_AfterUpdate()
     Dim strFilter As String
     strFilter = Me!cboMonat
     Debug.Print strFilter
     With Me!UFOgemittelterAbsatz.Form
         .Filter = strFilter
         .FilterOn = True
     End With
End Sub

Vielen Dank für eure Hilfe.
Ich brauche schnellstmöglich eine Antwort. Abgabetermin ist sehr bald.

Liebe Grüße

« Letzte Änderung: Februar 04, 2018, 14:13:01 von lissi1991 »
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7227
Re: Syntaxfehler 3075 fehlender Operator
« Antwort #1 am: Februar 04, 2018, 14:05:51 »
Hallo,
der reine Feldname im Formular ist kein gültiger Filterstring.
Bei der Ausgabe über Debug.Print muss Dir das eigentlich klar sein.
Du musst ja mit etwas vergleichen.
Etwa so:
Zitat
strFilter = "FeldnameTabelle = " & Me!cboMonat
Aud welches Feld soll sich also der Monat beziehen ?
Zeige mal den SQL Text der Abfrage.

PS:
Verwende die Codetags des Forums.

« Letzte Änderung: Februar 04, 2018, 14:10:08 von MzKlMu »
Gruß
Klaus
 

Offline lissi1991

  • Newbie
  • Beiträge: 20
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #2 am: Februar 04, 2018, 14:19:31 »
Vielen Dank MzKlMu

Das habe ich schon getan leider funktioniert das trotzdem nicht.

Die sql - Abfrage ist
SELECT DISTINCT tblsale.Monat From tblsale
als Ereignis der combobox

Leider bin ich in dem Gebiet nicht sehr bewandert. Wäre trotzdem toll, wenn mir geholfen werden kann.
Liebe Grüße
Lisa
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23297
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #3 am: Februar 04, 2018, 14:32:51 »
Hallo,

was für Werte enthält tblsale.Monat ?

Und außerdem:  reservierte Wörter vermeiden. ("Monat" ist der (deutsche) Name für die Month()-Funktion)

Zitat
als Ereignis der combobox

??

Du meinst damit, der SQL-String steht in der Kombifeld-Eigenschaft "Datensatzherkunft" ?

Offline lissi1991

  • Newbie
  • Beiträge: 20
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #4 am: Februar 04, 2018, 14:54:18 »
die Werte in der Tabelle sind als kurzer Text deklariert. Meintest du das?
"01 Januar"z.B.
hab das jetzt umgeändert in xx-Monat in der Tabelle, leider funktioniert es trotzdem nicht.

Zitat:
"Du meinst damit, der SQL-String steht in der Kombifeld-Eigenschaft "Datensatzherkunft" ?"
ja genau dort hab ich es reingeschrieben.


 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23297
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #5 am: Februar 04, 2018, 15:45:00 »
Hallo,

ja, ich meinte den Datentyp des Tabellenfeldes.

Wenn Text , dann muss das Filterkriterium (-string)   so lauten:


strFilter = "[Monat] = '" & Me!cboMonat & "'"

Warum steht aber im Feld "Monat"  eine Tageszahl plus ein Monatsname drin?

Solche Konstruktionen führen in den meisten Fällen in irgendwelche chaotischen/fehlerträchtigen/undefinierte Situationen.

Offline lissi1991

  • Newbie
  • Beiträge: 20
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #6 am: Februar 04, 2018, 15:59:07 »
Ich habe eine importierte Exceldatei mit Datum und verschiedenen Bestellungen.
Diese Bestellungen sollen nach Monat chronologisch in der combobox aufgelistet werden.
Januar; Februar; März;...
Das hat nicht funktioniert, deshalb hab ich vor den Monat 01; 02;03;... gesetzt.
Somit funktioniert die Sortierung in der combobox.
Das hat zur Folge, dass es kein Datum sondern ein Text in der importierten exceltabelle  ist.

Ich komme irgendwie überhaupt nicht weiter und ich weiß nicht wie ich das hinbekommen soll.

Ziel ist es die Bestellungen nach Datum von der combobox im Unterformular anzeigen zu lassen.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7227
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #7 am: Februar 04, 2018, 17:32:51 »
Hallo,
wenn Du ein Datumsfeld in der Tabelle hast, ist ein extra Feld für den Monat überflüssig. Der Monat lässt aus dem Datum ableiten. Und wenn Du mit SELECT DISTINCT dann den Monat aus dem Datum ableitest, ist auch die Zahl vor dem Monat nicht notwendig, denn die Sortierung nach dem Datum sortiert auch den Monat richtig.
Ein anderes Problem ist da eher auch das Jahr, denn den Februar gibt es 2017 und die Wahrscheinlichkeit dass es den auch 2019 gibt ist relativ hoch.
Du musst daher auch noch das Jahr in den Filter einfließen lassen.

Weiterhin ermittelt man den Monat immer als Zahl, den Monatsnamen dazu gewint man über die Funktion:
MonatName: Monatsname(Monatszahl)Ein optionaler Parameter in der Funktion steuert auch ob 3 Buchstaben (Feb) oder voller Name (Februar).

Es ergeben sich also folgende Fragen:
- Wie liegt das Datum in der imortierten Tabelle vor, ist es ein vollständiges Datum oder nur der Monat ?
- Wie ist es mit dem Jahr, denn die Monate wiederholen sich ja. ?

« Letzte Änderung: Februar 04, 2018, 17:44:08 von MzKlMu »
Gruß
Klaus
 

Offline lissi1991

  • Newbie
  • Beiträge: 20
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #8 am: Februar 04, 2018, 17:41:26 »
Lieber Klaus,

wie leite ich denn aus dem Datum den Monat ab. Muss ich das in der Abfrage tun?

Das hab ich gestern schon den ganzen Tag versucht, bin aber leider nur auf die Notlösung mit ZahlundMonat gekommen.

Bin wirklich grad am verzweifeln.
Liebe Grüße
Lisa
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7227
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #9 am: Februar 04, 2018, 17:42:52 »
Hallo,
beantworte mal meine obigen Fragen.
Gruß
Klaus
 

Offline lissi1991

  • Newbie
  • Beiträge: 20
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #10 am: Februar 04, 2018, 17:46:06 »
in der importierten Tabelle liegt das Datum z.B. 01.01.2017 vor

Versteh nicht ganz wo ich den Code einfügen soll. Ich bin wirklich eine Niete in dem ganzen. Sorry.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7227
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #11 am: Februar 04, 2018, 18:21:50 »
Hallo,
sorry, aber ich hatte 2 Fragen, die Frage wie Du das mit dem Jahr handhaben willst ist nicht beantwortet.
Gruß
Klaus
 

Offline lissi1991

  • Newbie
  • Beiträge: 20
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #12 am: Februar 04, 2018, 18:27:03 »
Hallo Klaus,
die Jahre können auch angezeigt werden.
Ist aber eigentlich erstmal egal.
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7227
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #13 am: Februar 04, 2018, 18:43:30 »
Hallo,
Zitat
Ist aber eigentlich erstmal egal.
nein, es ist nicht egal.
Wenn in der Tabelle 2017 und 2018 enthalten ist, erhältst Du ja den Februar von 2017 und 2018 willst Du das wirklich haben ?
Gruß
Klaus
 

Offline lissi1991

  • Newbie
  • Beiträge: 20
Re: Werte aus der Combobox in Unterformular übertragen
« Antwort #14 am: Februar 04, 2018, 18:45:52 »
So sieht meine importierte Tabelle aus natürlcih kurz gefasst. Sind nur Daten aus dem Jahr 2017 drin.