Januar 24, 2021, 03:57:14

Neuigkeiten:

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


Laufzeitenfehler 3071

Begonnen von Carl, Januar 10, 2021, 11:14:30

⏪ vorheriges - nächstes ⏩

Carl

Hallo,

eine Frage: Ich versuche mit dem untenstehenden Code ein unterformular zu filtern, aber es kommt der Laufzeitenfehler 3071. Was könnte ich falsch gemacht haben?


With Me!UFfrmworkorderUFO.Form
         .Filter = "Rohversion = " & Me!Kombinationsfeld82ii & ""
         .FilterOn = True
     End With
         Me!Kombinationsfeld82ii = Null
         Me.UFfrmworkorderUFO.Form.OrderBy = " [WOName] "
         Me.UFfrmworkorderUFO.Form.OrderByOn = True

Das UFO basiert auf einer Abfrage und die Felderbezeichnungen sind alle korrekt.

VG Carl

PS hier der SQL-String der Abfrage
SELECT tblStandRohversion.ID, tblStandRohversion.Rohversion, tblStandRohversion.RohversionBeschreibung
FROM tblStandRohversion;

MzKlMu

Januar 10, 2021, 11:18:04 #1 Letzte Bearbeitung: Januar 10, 2021, 11:26:16 von MzKlMu
Hallo,
zu der Fehlernummer gehört auch eine Meldung, bitte zitieren.
Eigentlich sollte einem das klar sein, dass die Fehlernummer alleine wenig aussagefähig ist.

Wo befindet sich der Code Hafo oder Ufo ?
Datentyp von Rohversion ?
Bitte Code immer vollständig zeigen.

Und der Ordnung halber, es ist ein Laufzeitfehler kein Laufzeitenfehler.
Gruß
Klaus

PhilS

Zitat von: Carl am Januar 10, 2021, 11:14:30Me.UFfrmworkorderUFO.Form.OrderBy = " [WOName] "
Das UFO basiert auf einer Abfrage und die Felderbezeichnungen sind alle korrekt.
Das wage ich zu bezweifeln. - In dem SQL deiner Abfrage ist von einem Feld "WOName" weit und breit nichts zu sehen.
Access DevTools - Find and Replace
Komfortables Suchen und Ersetzen in den Entwurfseigenschaften von Access-Objekten. In Abfragen, Formularen, Berichten und VBA-Code - Überall und rasend schnell!

Carl

Januar 10, 2021, 12:14:16 #3 Letzte Bearbeitung: Januar 10, 2021, 17:14:43 von MzKlMu
Rohversion ist ein Textfeld im Ufo. Der Filter ist im Hafo.

"Es ist ein Laufzeitfehler 3071 mit der Ausgabe: Dieser Ausdruck wurde falsch einegegeben, oder ist zu komplex, um ausgewertet zu werden. Vereinfachen Sie den Ausdruck."

Carl

Carl

Zitat von: PhilS am Januar 10, 2021, 11:49:38
Zitat von: Carl am Januar 10, 2021, 11:14:30Me.UFfrmworkorderUFO.Form.OrderBy = " [WOName] "
Das UFO basiert auf einer Abfrage und die Felderbezeichnungen sind alle korrekt.
Das wage ich zu bezweifeln. - In dem SQL deiner Abfrage ist von einem Feld "WOName" weit und breit nichts zu sehen.

Ach so, ich dachte Du wolltes SQL für die Abfrage für den Filter.

der für das UFO sieht so aus:
SELECT tblworkorder.ID, tblworkorder.WOName, tblworkorder.WOBeschreibungKurz, tblworkorder.WOBeschreibungMemo, tblworkorder.WOBereich, tblBereiche.Bereich AS WOBereichUC, tblworkorder.WOKernkompetenz, tblKernkompetenz.Kernkompetenz AS WOKernkompetenzUC, tblworkorder.WOStufe, tblStufen.Stufe AS WOStufeUC, tblworkorder.WOAutor, tblworkorder.WOStaffel, tblAutoren.Autor AS WOAutorUC, tblworkorder.WOZeitstempel, tblworkorder.WOStandRohversion, tblworkorder.WOOrdnername, (DLookUp("Hilfstexte","tblHilfstexte","ID=1"))+([WOOrdnername]) AS Pfad1, (DLookUp("Hilfstexte","tblHilfstexte","ID=3")) AS Pfad0, (DLookUp("Hilfstexte","tblHilfstexte","ID=1"))+([WOOrdnername])+"\"+"Material.docx" AS PfadManual, (DLookUp("Hilfstexte","tblHilfstexte","ID=1"))+([WOOrdnername])+"\"+"Instruktion.docx" AS PfadInstruktion, (DLookUp("Hilfstexte","tblHilfstexte","ID=1"))+([WOOrdnername])+"\"+"Auswertung.docx" AS PfadAuswertung, (DLookUp("Hilfstexte","tblHilfstexte","ID=1"))+([WOOrdnername])+"\"+"ExcelSheets.xlsm" AS PfadSheets, tblworkorder.Obs01, tblworkorder.Obs02, tblworkorder.Obs03, tblworkorder.Obs04, tblworkorder.Obs05, tblworkorder.ObsTime, tblworkorder.ausblenden, tblworkorder.ObsTimeVorgabe, tblStandRohversion.Rohversion, tblworkorder.WOParallelgruppe, IIf([WOParallelgruppe]=1,"","I") AS WOParallelgruppeIndex, tblparallelgruppe.parallelgruppeName, tblworkorder.istdirektaufgabe, abfWorkorderBatteriezugehoerigkeitUFO.IDBAT_F
FROM tblparallelgruppe INNER JOIN (tblStufen INNER JOIN (tblBereiche INNER JOIN (tblKernkompetenz INNER JOIN (tblStandRohversion INNER JOIN ((tblAutoren INNER JOIN tblworkorder ON tblAutoren.ID = tblworkorder.WOAutor) INNER JOIN abfWorkorderBatteriezugehoerigkeitUFO ON tblworkorder.ID = abfWorkorderBatteriezugehoerigkeitUFO.ID) ON tblStandRohversion.ID = tblworkorder.WOStandRohversion) ON tblKernkompetenz.ID = tblworkorder.WOKernkompetenz) ON tblBereiche.ID = tblworkorder.WOBereich) ON tblStufen.ID = tblworkorder.WOStufe) ON tblparallelgruppe.ID = tblworkorder.WOParallelgruppe
WHERE (((tblworkorder.ausblenden)=False) AND ((tblworkorder.istdirektaufgabe) Not In (True)));


MzKlMu

Hallo,
und meine anderen Fragen?
Gruß
Klaus

Carl

Zitat von: MzKlMu am Januar 10, 2021, 12:23:07Hallo,
und meine anderen Fragen?


Datentyp von [Rohversion] (UFO) ist Text, muss auch Text bleiben. ID ist natürlich Zahl, könnte es daran liegen?

Carl

MzKlMu

Hallo,
Texte müssen in Hochkomma.
Die in Deinem 1. Beitrag gezeigte Abfrage ist das die Abfrage des Kombis Kombinationsfeld82ii ?
Heißt das wirklich Kombinationsfeld82ii (also mit den ii hinten) ?

Vermutlich stimmen bereits die Grundeinstellungen nicht.

Wie ist denn das Kombi eingestellt ?
Spaltenzahl ?
Spaltenbreiten ?
Gebundene Spalte ?
Gruß
Klaus

Carl

Januar 10, 2021, 16:05:49 #8 Letzte Bearbeitung: Januar 10, 2021, 17:13:51 von MzKlMu
Hallo Klaus, ich habs jetzt nochmal von der vorherigen Version aus neu gemacht und es funktioniert jetzt.

Ja, das Kombinationsfeld heißt so, ich benenne mit römischen Zahlen. ii=2
Das Kombi war unauffällig und korrekt eingestellt.
Gebundene Spalte war 1, breite 0, bei 3 Spalten insgesamt.

Das Problem habe ich nicht raus bekommen, wahrscheinlich irgend was versehentlich verstellt? Beispielsweise war das Argument für das automatische Sortieren bei Start verstellt, ohne dass ich das eingegeben hatte.

VG Carl

MzKlMu

Hallo,
Zitatich benenne mit römischen Zahlen. ii=2
merkwürdige Benennung, was soll das bewirken ?
Da kannst Du auch gleich Kombinationsfeld82 stehen lassen. Sinnvoller wäre es, dem Feld gleich einen ordentlichen Namen zu geben. Z.B. cboVersionFiltern.

Wenn die in #1 gezeigte Abfrage die Abfrage für das Kombi ist (meine Frage dazu hast Du nicht beantwortet) so wird über die ID gefiltert und nicht über den Klartext. Der Klartext wird nur angezeigt. Die Spalte mit der ID (1) ist auch die gebundene Spalte, mit der wird gefiltert.
So sollte es klappen:
.Filter = "ID = " & Me.Kombinationsfeld82ii

Gruß
Klaus

Carl

Januar 10, 2021, 17:05:17 #10 Letzte Bearbeitung: Januar 10, 2021, 17:13:02 von MzKlMu
okay, danke, ich schau noch mal rein.

Felder mit der selben Formatierung und Einstellung habe ich mir gemerkt und zähle einfach römisch hoch. Ich bin eh der Einzige, der dort rein schaut.

VG Carl

MzKlMu

Hallo,
bitte unterlasse das Zitieren vollständiger Beiträge, es nimmt nur Platz weg und verlängert unnötig die Themen. Ich habe die Zitat gelöscht.
Gruß
Klaus