Office: (Office 2010) Abfrage Unterformular dynamisch anpassen

Helfe beim Thema Abfrage Unterformular dynamisch anpassen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo! Wenn ich das Formular öffne werden alle Datensätze (13) angezeigt. Setze ich den Filter auf das Optionsfeld (A) Administrativ funktioniert... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von m.kohler, 13. Februar 2017.

  1. Abfrage Unterformular dynamisch anpassen


    Hallo!

    Falls du nicht auf False filtern willst, sondern nur im True-Fall den Filter anwenden willst, kannst du das so schreiben:
    Code:
    Etwas eigenartiges ist allerdings beim Unterformular:
    Es nimmt keinen leeren Filter-Ausdruck an.
    Code:
    Wenn NewFilterString ein Leerstring ist, bleibt der alte Filter erhalten.

    Abhilfe:
    Code:
    Allerdings kann mir gerade die Ursache für dieses Verhalten nicht erklären.
    Vielleicht findet jemand den Fehler.

    mfg
    Josef
     
    Josef P., 11. März 2017
    #46
  2. Hallo Josef

    Danke für Deine Sonntagsarbeit, vorallem bei dem Wetter*mrcool
    Ich werde Deinen Vorschlag so einarbeiten.
    Was könnte der Grund sein, dass Die Kombinationsfelder bei GetFocus nicht geladen werden und die Fehlermeldung erscheint?

    Herzlichen Dank

    Mike
     
    m.kohler, 12. März 2017
    #47
  3. Hallo!

    Erstmal noch ein paar Code-Optimierungen:
    Code:
    Das "0=0" lässt du am besten weg oder übergibst nur einen Leerstring.

    Code:
    Was willst du damit erreichen?
    Falls das du Werte zw. Min und Max filtern willst, reicht:
    Code:
    Das liegt am ";" am Ende der SQL-Anweisung im Formular.
    Mit dieser Änderung sollte es laufen:
    Code:
    mfg
    Josef
     
    Josef P., 12. März 2017
    #48
  4. Abfrage Unterformular dynamisch anpassen

    Nachtrag:
    Ich probierte das erwähnte Verhalten bei
    Code:
    noch einmal aus. => Das Problem ist ohne Code-Änderung wieder weg. Der Inhalt von Filter nimmt nun - wie zu erwarten wäre - auch einem Leerstring an.

    mfg
    Josef
     
    Josef P., 12. März 2017
    #49
  5. Hallo Josef
    Sorry das ich mich erst jetzt melde. Dank Deinen Code anpassungen funktioniert es nun wie es soll.
    Danke nochmals

    Gruss Mike
     
    m.kohler, 16. März 2017
    #50
  6. Hallo Josef

    Nochmals eine Nachfrage zu Deinem tollen Add-In
    Ich habe nun bemerkt, dass wenn ich einen Filterausdruck eingebe, Gross/Kleinschreibung eine Rolle spielt. Bei den beiden Videos in denen Du den ACLib-FilterForm-Wizard vorstellt, gibst Du den Filterausdruck in Kleinschreibung ein, es werden aber auch Ergebnisse mit Grossbuchstaben angezeigt. Wo kann ich das verhalten ändern, damit nicht mehr ausf Gross/Kleinschreibung geachtet wird?

    Danke Gruss Mike
     
    m.kohler, 26. März 2017
    #51
  7. Hallo!

    Welches DBMS setzt du ein bzw. welchen Datentyp haben die Tabellenfelder, bei denen die Groß/Kleinschreibung eine Rolle spielt?

    Anm.:
    In Access/Jet/ACE-Tabellen wird bei Textfeldern nie zw. Groß- u. Kleinschreibung beim Filtern unterschieden.
    Bei anderen Datenbanken (MS-SQL, Oracle, PostgreSQL usw.) kann man das konfigurieren.

    mfg
    Josef
     
    Josef P., 27. März 2017
    #52
  8. Abfrage Unterformular dynamisch anpassen

    Hallo Josef
    Die relevanten Felder (Text) stammen sind mit einer Oracle Dataenbank über ODBC verknüpft und mittels Abfrage in Access aufbereitet.
    Kann ich bei Access irgendwo etwas einstellen? In der Abfrage?
    Gruss Mike
     
    m.kohler, 27. März 2017
    #53
  9. Hallo!

    Vorab: @Oracle-Profis: bitte korrigierend/helfend einspringen.


    Die case-insensitive Filterung ist von Oracle abhängig.
    Ich verwendete Oracle schon länger nicht mehr, daher bin ich bezüglich ODBC-Einstellungen nicht am neuesten Stand.
    Vielleicht gibt es in den ODBC-Einstellungen eine Möglichkeit den case-sensitiven Vergleich zu aktivieren.
    Auf Oracle-Seite lässt sich auch etwas machen, aber dafür werden dir vermutlich die Rechte.

    Falls das nicht möglich ist, wäre eine Notlösung, über berechnete Felder zu vergleichen.
    Code:
    Falls das aufgrund der Datensatzanzahl zu lange dauert, könntest du auf eine Pass-Through-Abfrage ausweichen und die gewünschte Sortierung in der SQL-Anweisung angeben. (SQL-Anweisung wird dann direkt an Oracle weitergereicht - du musst somit die SQL-Anweisung im Oracle-Dialekt schreiben.)

    mfg
    Josef
     
    Josef P., 27. März 2017
    #54
  10. Hallo Josef

    Danke für Deine Hilfe. Da die Filterung über Dein AddIn geschieht kannst Du mir am besten erklären wo ich dein Vorschlag
    Code:
    integriere.

    Ich habe heute morgen einen alten Tread zu diesem Thema gefunden. Jedoch weis ich auch dort nicht wie ich das mit dem ACLib-FilterForm-Wizard integriere.

    Gruss Mike
     
    m.kohler, 27. März 2017
    #55
  11. Hallo!

    Die Filterung läuft über die eingefügten Klassen. Das Add-In ist nur für das Einfügen des Codes zuständig. *wink.gif*

    Wie sieht derzeit deine Zeile mit der Definition des Filterausdrucks für so ein Textfeld aus?

    mfg
    Josef
     
    Josef P., 27. März 2017
    #56
  12. Hallo

    Ich denke meinst folgende Zeile:
    Code:
    Grüsse Mike
     
    m.kohler, 27. März 2017
    #57
  13. Abfrage Unterformular dynamisch anpassen

    Ich nehme an, du verwendest die FilterControlManager-Klasse.

    Dann kannst du folgendes probieren:
    Code:
    Weiters fügst du noch folgenden Code an:
    Code:
    Damit wird der Inhalt im Textfeld klein geschrieben und mit dem klein geschriebenen Wert aus dem Datenfeld verglichen.



    Anm.: Für solche Spezialfälle ist die FilterStringBuilder-Variante vermutlich etwas verständlicher in der Bedienung, da man bei dieser Variante den Filterwert übergibt und somit in Code direkt bei der Filterdefinition die Verwendung der LCase/UCase-Funktion sieht.

    Code:
    mfg
    Josef
     
    Josef P., 27. März 2017
    #58
  14. Hallo Josef

    Ich habe nun Deine Code mit der FilterControlManager-Klasse versucht und es funktioniert wie es soll.
    Nun sind da noch weitere Felder (Strasse + ORT). Da ich nicht wusste wie ich die beiden Felder zusätzlich in hier
    Code:
    einfüge, habe ich kurzerhand die Filter neu gemacht mit der FilterStringBuilder-Variante. Dann die SQL Anweisung gemäss Deinem Code angepasst. Nun funktionieren alle Filter wie sie sollen.
    Leider funktioniert mit der FilterStringBuilder-Variante der Autofilter nicht mehr*boah *boah
     
    m.kohler, 28. März 2017
    #59
  15. Hallo!

    Für den Autofilter mit der FilterStringBuilder-Variante musst du bei den Filter-Controls etwas nachhelfen und nach Änderung eine Methode aufrufen.

    Im Formularcode sollte es die Prozedur "FilterControlValueChanged" geben.
    Diese musst du in den Filtersteuerelementen in AfterUpdate eintragen.
    Code:
    Falls du immer den Autofilter haben willst und keine Checkbox zum Aus- und Einschalten der autom. Filterung nach Filterwerteingaben, dann musst du die FilterControlValueChanged-Prozedur anpassen.

    So ähnlich sollte die Prozedur aktuell bei dir aussehen:
    Code:
    Falls du immer sofort filtern willst, brauchst du die Checkbox cbAutoFilter nicht.
    Code:
    mfg
    Josef
     
    Josef P., 28. März 2017
    #60
Thema:

Abfrage Unterformular dynamisch anpassen

Die Seite wird geladen...
  1. Abfrage Unterformular dynamisch anpassen - Similar Threads - Abfrage Unterformular dynamisch

  2. Ausführen einer Abfrage Forcieren

    in Microsoft Access Hilfe
    Ausführen einer Abfrage Forcieren: Guten Morgen Ich hätte mal ne Frage zum Ausführen von Abfragen mittels VBA. Mittels VBA kann ich ja via "docmd.openquery ..." eine Abfrage ausführen. Ich nutze das immer wieder mal um z.b:...
  3. Abfrage Kriterien ist falsch

    in Microsoft Access Hilfe
    Abfrage Kriterien ist falsch: Hallo, ich will bei einer Abfrage als Kriterium folgende Anweisung einfügen: Nicht In (SELECT tblBenutzergruppen.BenutzergruppeID FROM tblBenutzergruppen INNER JOIN tblGruppenzuordnungen ON...
  4. Abfrage: Anzahl von Kriterium >0

    in Microsoft Access Hilfe
    Abfrage: Anzahl von Kriterium >0: Hallo, [ATTACH] Ich versuche gerade, die Anzahl der belegten Plätze auf einem LKW per Abfrage zu ermitteln. Dabei wäre dann FSPal > 0. Leider zeigt er mir die Anzahl der Plätze an. [ATTACH]...
  5. Teil des Zellinhaltes abfragen in VBA

    in Microsoft Excel Hilfe
    Teil des Zellinhaltes abfragen in VBA: Guten Tag, ich möchte in Zelle E1 den linken 4-stelligen Teil in Zelle A3 abfragen. Habs versucht mit IF (LEFT(R[2]C[-3],4) = "8396") then ... Else ... End If Wer kann...
  6. Verliert irgendwann die Selektive Abfrage von UFO

    in Microsoft Access Hilfe
    Verliert irgendwann die Selektive Abfrage von UFO: Guten Tag Ich habe ein HF mit darin befindlichem UF. Die Abfrage der Teilnehmer im Uf bezieht sich immer auf den Kurs-Typ im HF Solang ich das Formular neu erstelle, funktioniert das...
  7. Listenfeld im Endlosformular

    in Microsoft Access Hilfe
    Listenfeld im Endlosformular: Hallo in die Runde! Ich stehe gerade furchtbar auf dem Schlauch und hoffe, ihr könnt mir helfen: Problemkind ist eine Art Zimmerverwaltung: - jedes Zimmer hat eine ID und ist einem Objekt...
  8. Abfrage Unterformular Wert jedoch im Hauptformular

    in Microsoft Access Hilfe
    Abfrage Unterformular Wert jedoch im Hauptformular: In einer Abfrage gibt es ja mehrere Möglichkeiten sich an dem Formular zu orientieren. Abhänig vom Buchstaben, vom Wert etc. Wenn die Abfrage vom aktuellen Tabellenblatt stammen soll, braucht man...
  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