Office: (Office 2010) Haupt-/Unterformular gegenseitig verknüpfen

Helfe beim Thema Haupt-/Unterformular gegenseitig verknüpfen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hi, du verkettest die Strings nicht richtig, Maike hat es dir in #55 doch vorgemacht, warum hältst du dich nicht daran? Die einzelnen Kriterien... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Rapid93, 23. Januar 2016.

  1. Haupt-/Unterformular gegenseitig verknüpfen


    Hi,

    du verkettest die Strings nicht richtig, Maike hat es dir in #55 doch vorgemacht, warum hältst du dich nicht daran?

    Die einzelnen Kriterien müssen mit " OR " verknüpft werden. Zur Vereinfachung, weil man ja nicht weiß wieviele Kriterien verwendet werden, fängst man gleich beim ersten mit " OR " an und schneidet das erste am Ende wieder ab.

    In dem zuletzt gezeigten Fall sieht es allerdings anders aus, weil du da ja nur ein Eingabefeld hast, das mit mehreren Datenfeldern verglichen werden soll.
    So sollte das klappen:
    Code:
    Wenn du allerdings mehrere Eingabefelder zum Filtern einsetzen willst, sieht die Sache wieder anders aus.

    BTW:
    Der Vergleich mit LIKE macht nur Sinn, wenn Suchmuster eingesetzt werden.
     
    MaggieMay, 11. Februar 2016
    #61
  2. Wenn du die 6 stehen lässt (hättste ja auch einfach mal ausprobieren können *wink.gif* ) dann ergibt sich als Filterstring nach dem Wegschneiden:
    Code:
    Jetzt klar?

    Und wie sieht der Filterstring im Direktfenster aus? Fällt dir daran evtl. selbst was auf?

    @MaggieMay
    Das soll(te) mal ein zusammengesetzter Filter werden, im Moment ist mir aber auch nicht mehr so ganz klar, worauf das jetzt hinausläuft.

    maike
     
  3. Hey erstmal danke für den Code MaggieMay funktioniert jetzt ohne weitere Probleme.*Smilie
    Aber habe es halt bei der anderen Filterung, die ich mit Maike vorher erarbeitet habe, halt auch so gemacht, dass ich für jedes neue Filterfeld einen neuen if-clause formuliert habe...das funktioniert ja auch(habe auch nochmal vor Stichwort1 bzw. Stichwort2 "or" geschrieben, aber jetzt müsste man wahrscheinlich wieder das mid anpassen....)

    Und Maike jetzt habe ich gerade verstanden warum wir von 6 auf 5 runtergegangen sind -> vorher hatten wir AND und jetzt OR stehen -> Differenz gleich 1*biggrin.gif*
    Hat etwas länger gedauert, aber danke für die ausdauernde Betreuung*Smilie

    Würde wohl an dieser Stelle eure Geduld nicht weiter strapazieren und versuchen erstmal auf eigenen Beinen weiterlaufen es sei denn einer von euch hat Ad-Hoc eine Lösung oder Anregung zu diesen Problemen:

    -Die Tabelle auf die, die Datenherkunft des Listenfeldes beruht beinhaltet ein Anlagefeld welches ja leider nicht im Listenfeld dargestellt wird ->eine Ereignisprozedur, die das Anlagefeld läd beim Draufklicken oder ähnliches

    -Hatte das ja mit der grob Filterung mithilfe der Kontrollkästchen angeschnitten, wo auch Maike die Idee mit der externen Ansteuerung der Codes eingebracht hat. Aber ich habe ja 6 Kontrollkästchen sprich 2^6=64 Möglichkeiten diese unterschiedlich zu bedienen und müsste ja dann auch 64 codes schreiben (viel copy paste ich weiß aber trzd. so naja), die die verschiedenen Varianten bedienen da jemand ne Idee das schlanker zu gestalten

    Ansonsten großen Dank an Alle die mich bisher unterstützt haben ich habe einiges gelernt und hoffe jetzt mit dem gelernten den Rest selber hinzubekommen*Smilie

    Herzliche Grüße Rapid
     
  4. Haupt-/Unterformular gegenseitig verknüpfen

    Versteh' ich jetzt nicht.
    Den Code, den du bisher im AfterUpdate der einzelnen Felder hast, fasst du zu einer einzigen Filterprozedur zusammen, nennst die Machfilter oder sonstwie und rufst sie dann jeweils im AfterUpdate der Felder nur auf:
    Code:
    und im AfterUpdate der jeweiligen Felder dann:
    Code:
    maike
     
  5. Ja aber der eine Filter überschreibt ja immer den anderen. Und ich will ja beliebig kombinieren können. Beispielweise: Ad-Hoc 1, Auftragsabschluss 0, ClaimListe0, Monatsbericht 1, NCR 1, Planabweichungsliste 0 (0 steht für kein Häckchen 1 für Häckchen).
    Muss ich dann nicht genau für jeden Fall von möglichen Kombinationen einen entsprechenden Code bereithalten sprich iwie sowas wie:

    Code:
    Oder ist das zu kompliziert gedacht und die Filter entsprechend zu kombinieren?

    Grüße Rapid
     
  6. Bzw. im Code:
    würde ich ja nicht um diese 64 Varianten der if-clauses drum herum kommen.
     
  7. Nein, eben nicht, wenn du alles zusammen in einer Prozedur hast.
    Du hängst die gültigen immer an den Filterstring an (mit or), da wird dann ergänzt oder weggelassen, aber nix überschrieben.
    Ja.
    Für 6 Checkboxen genau 6 ifs. Die werden dann bei der Zusammensetzung im strFilter kombiniert (zu den 64 Varianten).
    maike
     
  8. Haupt-/Unterformular gegenseitig verknüpfen

    Hallo,

    für was verwendest Like ohne * ?
    Ich verwende Like immer mit * sonst wäre es ja dem = Zeichen gleich zusetzen, oder?
    Code:
    oder...
    Code:
    dann würde nur der Teil aus dem Feld gefiltert werden, aber alles was diesen Text beinhaltet.
    Anderen Falls, würde das auch genügen...
    Code:
    Kommt darauf an was du vorhast zu Filtern *Smilie
    Eventuell suchst du nach so einer Filtermöglichkeit?!
    Sorry, aber ich habe mir nicht den gesamten Thread durchgelesen, mir ist nur das aufgefallen!
     
    Kyron9000, 12. Februar 2016
    #68
  9. Hey Kyron danke für den Einwurf*Smilie Das mit dem like werde ich bei Gelegenheit noch anpassen ansonsten ist die Synthax mit der Filterung eigentlich soweit fertig.*biggrin.gif*

    Aber bei dem zusammensetzten der ifs komm ich an einer Stelle nicht weiter der Code sieht erstmal so aus: Code:
    Habe halt mit "Kontrollkästchen7" angefangen das so anzupassen hat auch erstmal ohne Probleme funktioniert. Dann einfach copy paste für "Kontrollkästchen5" und ausprobiert ob sich jetzt die Filter entsprechend zusammensetzen. Das war leider nicht der Fall:/
    Sprich wenn ich jetzt das Kontrollkästchen für den Auftragsabschluss wegklicke werden diese Ergebnisse auch nicht angezeigt aber der Code hat leider keinen Einfluss darauf, wenn ich das Kontrollkästchen für die ClaimListe wegklicke. Wenn ich jedoch den Code für den Auftragsabschluss raus lösche funktioniert es für den ClaimListe durchaus.

    Habe auch schon versucht die Bedingungen einfach als elseif hinterenander zu reihen sprich ungefähr so: Code:
    leider auch ohne Erfolg (gleiches Resultat wie vorher).

    Jemand ne Idee?*Smilie

    Viele Grüße Rapid
     
  10. Hallo,
    ja, und das passiert ja auch immer noch.
    Also müssen die Strings verkettet werden. Aber du musst auch Klammern setzen, wegen der Vermischung von UND und ODER.

    Beispiel: Code:
    Und am Ende wird das erste " AND " wieder abgeschnitten: Code:
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    MaggieMay, 15. Februar 2016
    #70
  11. Hallo,

    denke es ist ein Anordnungsproblem...
    Code:
    Das...Not IsNull(Me.Text24), ist ja bei allen 3 gleich, also wird auf jeden Fall immer der letzte Code verwendet.
    Wenn du Not IsNull(Me.Text24) für alle einstellst und den letzten Code zuerst abfragst, wird es mM passen?!
     
    Kyron9000, 16. Februar 2016
    #71
  12. \@Kyron9000:
    Wenn ich das richtig verstanden habe, soll aber alles miteinander kombinierbar sein, was gegen "ElseIf" spricht.
    Und an die Klammersetzung hast du auch nicht gedacht.
     
    MaggieMay, 16. Februar 2016
    #72
  13. Haupt-/Unterformular gegenseitig verknüpfen

    Wenn ich das richtig verstehe
    dann handelt es sich hier um einen kombinierten Filter. Im Code des TE ist konsequent die Zusammensetzung rausgelassen - wie MaggieMay schon anmerkte.
    Die Zusammensetzung erfolgt, das scheint Rapid nicht klar zu sein, über das Anhängen/Verketten des neuen strSQLFilter an den alten, also nicht
    strSQLFilter = "IrgendeinFeld ...
    sondern
    strSQLFilter = strSQLFilter & " IrgendeinFeld ...

    Um die Probleme mit der AND/OR Verkettung zu vereinfachen, würde ich einen zweiten String einbauen:
    Der gezeigte Code sollte also imho so ausehen:

    Code:
    maike
     
  14. Steht irgendwo beschrieben, welche Funktion die Kontrollkästchen haben? Ich kann das nicht finden...

    Das neue Konstrukt (... OR ArtBericht 'Auftragabschluss' OR ArtBericht 'ClaimListe' ...) finde ich nämlich irgendwie unlogisch - sorry maike.
     
    MaggieMay, 16. Februar 2016
    #74
  15. \@AMaggieMay
    Gefunden hab' ich das:
    Ist aber etwas verschwurbelt formuliert.

    Kein Grund für Sorry, ich find's auch nicht besonders logisch *biggrin.gif* - ich hab' mich mit der Bedingung versehen (müsste If Not Kontrollkästchen heißen bzw. = statt ).
    Mal sehen ob ich's noch editiert kriege.

    maike
     
Thema:

Haupt-/Unterformular gegenseitig verknüpfen

Die Seite wird geladen...
  1. Haupt-/Unterformular gegenseitig verknüpfen - Similar Threads - Haupt Unterformular gegenseitig

  2. Schriftart einer Tabelle im Unterformular verändern

    in Microsoft Access Hilfe
    Schriftart einer Tabelle im Unterformular verändern: Hallo, wie kann ich die Schriftart einer Tabelle ( Datenblatt ) im Unterformular verändern. Also nicht Global für alle! Mit freundlichen Grüßen
  3. Unterformular schrumpfen

    in Microsoft Access Hilfe
    Unterformular schrumpfen: Hallo, ich stehe gerade vor dem Problem, dass ich eine DB auf Rechnern mit verschiedener Auflösung laufen lasse. Meine Lösung: Alle Steuerelemente um den Faktor 0,73 verkleinern, ebenso deren...
  4. MS Access Formular: Datensatz duplizieren mit Unterformularen

    in Microsoft Access Hilfe
    MS Access Formular: Datensatz duplizieren mit Unterformularen: Hallo Ihr Lieben, ich bin ziemliche Anfängerin bei MS Access also nehmt es mir nicht übel, wenn ich Dinge falsch bezeichne etc. :) Ausganslage Ich hab ein Hauptformular (1) (Angaben zur...
  5. Listenfeld mit Daten aus Haupt und Unterformular

    in Microsoft Access Hilfe
    Listenfeld mit Daten aus Haupt und Unterformular: Hallo zusammen, habe folgendes Problem: Habe eine Abfrage, basierend aus Daten von Haupt- und Unterformular. Diese sind in der Beziehung 1:n verknüpft (mit Primärschlüssel). Diese Abfrage ist...
  6. Datensätze duplizieren aus Haupt- und Unterformular

    in Microsoft Access Hilfe
    Datensätze duplizieren aus Haupt- und Unterformular: Hallo zusammen! Ich habe im Rahmen einer neu anzulegenden Datenbank ein Formular entwickelt , in dem aus einem Listenfeld ("List7") zwischen verschiedenen Baugruppen ausgewählt werden soll:...
  7. Haupt -und 2 Unterformulare verknüpfen

    in Microsoft Access Hilfe
    Haupt -und 2 Unterformulare verknüpfen: Hallo, ich bins mal wieder! Ich habe 1 Hauptformular und 2 Unterformulare, welche ich durch button miteinander verknüpfen möchte. Die button sind auf dem Hauptformular. Ich habe es bereits mit...
  8. Mails aus einzelnen IMAP-Konten löschen, wenn im Haupt-Posteingang gelöscht

    in Microsoft Outlook Hilfe
    Mails aus einzelnen IMAP-Konten löschen, wenn im Haupt-Posteingang gelöscht: Ich habe mehrere IMAP-Konten und verschiebe Kopien davon, mittels einer Regel, in mein Hauptposteingang, um diese dort gesammelt lesen zu können. Das Original möchte ich nicht verschieben, weil...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden