Office: (Office 2010) UFO Button Anzeigefilter

Helfe beim Thema UFO Button Anzeigefilter in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, zum Feierabend hab ich noch eine Frage: Kann ich in einem unverknüpften UFO mit Buttons aus dem HFO Datensätze wählen? Wenn ja, welcher Code... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von mad.din, 16. Dezember 2014.

  1. UFO Button Anzeigefilter


    Hallo,
    zum Feierabend hab ich noch eine Frage:
    Kann ich in einem unverknüpften UFO mit Buttons aus dem HFO Datensätze wählen? Wenn ja, welcher Code muss durch ein Klick auf die Buttons ausgeführt werden?
    Code:
    Das war mein erster Versuch dies bezüglich...
    Im HistoryFO kann ich mittlerweile, dank der Comunity dieses Forums, mit einem Kombifeld die in HistoryUFO angezeigten Datensätze filtern. Ich würde aber gerne zusätzlich den gleichen Funktionsumfang mit 4 Knöpfen realiesieren.
    • gehe zu ALLE (MAID 0)
    • gehe zum vorherigen Datensatz ausgehend vom aktuell Angezeigten
    • gehe zum nächsten ...
    • gehe zum letzten (aktuell höchste MAID)
    Ich weiß nicht ob es jetzt sinnvoll ist zu versuchen dem das Kombifeld anzusteuern, da eben da ja schon der Filter hinterlegt ist, oder man direkt das UFO ansteuern sollte.

    Danke im Voraus.
    Gruß MADDIN
    PS: Ich werde wohl frühestens morgen antworten können.

    :)
     
  2. Das Kombifeld wäre sinnvoll wohl nur mit den IDs anzusprechen.
    Was hat denn dein Versuch ergeben?
    Wenn HistoryUFO dein Unterformular-Steuerelement auf dem Hauptform ist:
    Code:
    Sollte so eigentlich klappen. Für vorherigen und letzten entsprechend anpassen.
    "Gehe zu alle" geht so nicht, was soll das bedeuten?
    Irgendwie habe ich den Eindruck, du willst hier das Kombi ersetzen und mit Buttons filtern?
    maike
     
  3. Hallo maikek,

    mein erster Versuch endet in einem Laufzeitfehler 438: Objekt unterstützt diese Eigenschaft oder Methode nicht.
    Ich möchte mein Kombifeld auf keinen Fall ersetzen. Ich möchte nur die Navigationsmöglichkeiten verbessern. Wenn man dafür mit den Buttons filtern muss, dann würde ich das auch gerne so machen *wink.gif* Mein Kombifeld hat in der Datenherkunft folgenden Code stehen:
    Code:
    Ich möchte gerne die Datensätze genau wie mit dem Kombifeld filtern. Dein Code an sich funktioniert und hat mir wieder eine neue Funktion gezeigt, aber da geht ja "nur" dieser kleine Markiererpfeil einen Datensatz runter. Aber die angezeigten Datensätze / der aktuelle Filter bleibt bestehen. Ich möchte dann aber die Datensätze des nächsten Mitarbeiters sehen.
    Bei ALLE soll, wie in meinen Kombifeld, die MAID 0 (die es in den Tabellen gar nicht gibt) ausgewählt werden und dann auch alle DS angezeigt werden. ALLE steht in meinen Kombifeld halt auch ganz oben...

    Ich weiß nicht, ob mein Vorhaben so überhaupt realisierbar ist. Wenn das nicht der Fall sein sollte, muss ich die Idee halt wieder verwerfen und die Buttons löschen.
    Grüße vom MADDIN
     
  4. UFO Button Anzeigefilter

    Definiere ein Recordset auf Basis der RowSource des Kombifeldes. Springe in diesem Recordset auf den Datensatz, der dem aktuellen Wert des Kombifeldes entspricht (FindFirst). Gehe zum nächsten Satz des Recordsets (MoveNext) und weise dem Kombifeld diesen Wert zu. Setze den Formularfilter entsprechend.
     
  5. \@Maxel Sorry, ich hatte heute einen ziemlich vollen Tagesablauf. ich werde nächste Woche mal schauen, wie das geht, was du beschrieben hast.

    Ich wünsche euch ein schönes Wochenende und einen schönen 4ten Advent.
    Gruß MADDIN
     
  6. OK, MADDIN.

    Noch eine Ergänzung:

    Wenn Du den Filter zugewiesen hast, gehe im Recordset noch einen Datensatz weiter. Wenn die Bedingung EOF erfüllt ist, setze den Vorwärts-Button auf inaktiv (Enabled = False), damit er nicht mehr betätigt werden kann und damit einen Fehler auslöst.

    Anschließend setzt Du den Rückwärts-Button auf aktiv (Enabled = True), weil ja jetzt - am Ende des Recordsets - wieder rückwärts geblättert werden kann.
     
  7. Hallo,
    ich bin beim Versuch das Recordset zu erstellen. Leider weiß ich im Moment nicht so wirklich, wie ich die Daten aus meiner vorhandenen Tabelle Mitarbeiter einbeziehen kann. Des Weiteren würde ich gerne noch wissen, wo der Code vom Recordset zu stehen hat. Aktuell steht er bei mir im Privat-Sub von meinem Knopf "nächster". Aber da ich das rs nicht bei jedem Klick neu aufbauen will, wird das wohl weniger sinnvoll sein.

    Code:
    Wenn ich auf den Button "nächster" klicke, kommt ein Fehler beim Kompilieren: Methode oder Datenobjekt nicht gefunden. Blau hinterlegt ist in der Zeile "rs("MAID") = Mitarbeiter.MAID" der Teil ".MAID".
    Wenn der Code dann funktioniert werde ich versuchen die Verbindung zum Kombifeld zu erstellen.

    Gruß vom MADDIN
     
  8. UFO Button Anzeigefilter

    Hallo nochmal,
    da ich das mit dem Recordset nicht so wirklich hin bekommen, hab ich jetzt eine andere Lösung gefunden. Diese ist aber leider noch nicht ganz vollständig:


    Code:
    Welche Teile des Codes machen schon das was sie sollen?
    • Private Sub erster_Click() funktioniert. mir werden die dem entsprechenden Datensätze angezeigt.
    • Private Sub MAIDKombinationsfeld_AfterUpdate() geht auch. der Filter funktioniert super.

    Was funktioniert nur zum Teil?
    • Private Sub vorher_Click() - Wenn Datensätze von Mitarbeitern entfernt wurden, werden diese leer angezeigt. (Bsp.: MAID 1-5 gibt es. danach geht es mit MAID 14 weiter. ich möchte aber nicht 8 leere MAID ohne Datensätze angezeigt bekommen. Die sollen übersprungen werden.)
    • Private Sub naechster_Click() - Gleiches Problem wie gerade. Außerdem fängt meine MsgBox das Ende der MAIDs nicht ab. Ich kann bis ins Nirgendwo klicken.

    Was geht noch gar nicht?
    • Private Sub letzter_Click() - Hier soll nur auf den letzten Mitarbeiter gesprungen werden, und dessen Datensätze angezeigt werden.

    Also jetzt zu meinen Fragen:
    1. Wie kann ich aus Meiner Tabelle "Mitarbeiter" die größte "MAID" auslesen, um diese als Auslöser für die MsgBox und Ziel-MAID für den Button Letzter festzulegen?
    2. Wie kann ich festlegen, dass ungefüllte/gelöschte Datensätze übersprungen werden?

    Ich würde mich über antworten sehr freuen, kann aber nicht mit Sicherheit sagen, dass ich diese noch vor dem Jahreswechsel begutachten kann. Ich werde noch ca. 2 - 2,5 Stunden hier sein und weiter rum tüfteln.

    Grüße vom MADDIN
    Ich wünsche euch frohe Weihnachten
     
  9. Also meine erste Frage habe ich mir kurz vor Feierabend und Weihnachten *Smilie selbst beantwortet. Man nehme ein ungebundenes Textfeld, füge bei Standardwert "=Max([Mitarbeiter]![MAID])" ein und greife auf dieses Textfeld mit "Val(Me.MaxMAID)" in dem Code von den Buttons zu. Ach ja, versteckt habe ich das Textfeld natürlich auch.
    damit bleibt nur noch meine zweite Frage über die Feiertage bestehen:

    Bis die Tage mal und ein Frohes Fest
    der MADDIN
     
  10. Hallo,
    bleib mal beim Recordset, da hast du dann nur tatsächlich exisitierende MitarbeiterIDs drin.
    Erstellen:
    Code:
    Zum nächsten springen:
    Code:
    Den Rest schaffst du dann glaube ich auch selber *wink.gif* .
    maike
     
  11. Hallo, da bin ich wieder.
    Ich wünsch euch ein frohes neues Jahr.
    Ich versuch im Moment den Vorher-Button an meine Bedürfnisse anzupassen. Mit dem Recordset funktioniert die Darstellung der Datensätze im Kombifeld tadellos. Da sind jetzt also keine Lücken mehr drin. Danke dafür.
    Ich habe aber das Gefühl, als ob EOF bzw. in dem Fall BOF bei mir nicht richtig funktionieren. Dazu der aktuelle Code:

    Code:
    Es kommt ein Laufzeitfehler 2113: "Sie haben einen Wert eingegeben, der für dieses Feld nicht gültig ist." in der Zeile:
    Me!MAIDKombinationsfeld = rs.Fields("MAID")
    Wenn ich mit der Maus über dem Quellcode bin, wird mir
    Me!MAIDKombinationsfeld = 1
    angezeigt. Dabei sollte doch genau diese 1 (also die aktuell erste MAID) mit BOF abgefangen werden, damit ich auch meinen "ALLE"-Eintrag (im Kombifeld mit UNION hinzugefügte MAID 0) anzeigen lassen kann.

    Ich würde mich auch in diesem Jahr wieder über Hilfe freuen. Danke
    Gruß MADDIN
     
    mad.din, 6. Januar 2015
    #11
  12. PS: und wenn ich mein "= rs.BOF Then" durch ein "= 1 Then" ersetze, dann zeigt er mir zwar "ALLE" im Kombifeld an, aber das UFO wird geleert. Außerdem reagiert er dann nicht mehr auf mein Kombifeld. Also einmal bis zur ersten und dann nullten MAID durchgeklickt und dann was anderes im Kombi eingestellt, bleibt das Recordset beim ersten hängen.
     
    mad.din, 6. Januar 2015
    #12
  13. UFO Button Anzeigefilter

    Moin,
    EOF = End of File (true or false)
    BOF = Begin of File (true or false)
    Das bezieht sich auf dein Recordset, nicht auf ein Feld.
    Code:
    Wenn MAID = true (oder false) - das ist sinnlos.

    Warum machst du es denn nicht einfach nach meinem Muster (und versuchst, das zu verstehen, sonst einfach fragen):
    Code:
    Stelle den anderen Code auch noch um und setze auch dort das Findfirst als erstes.
    Ansonsten kann es passieren, dass der letzte Datensatz gefunden wird und dann MoveNext auf Fehler läuft.
    maike
     
  14. Nachtrag:
    Wenn du "Alle" mit einbeziehen willst, muss dein Recordset ebenfalls die 0 für "Alle" enthalten, also die gleiche SQL wie das Kombi.
    Dazu dann noch eine Bedingung vorschalten:
    Code:
    maike
     
  15. Hallo,
    ich habe jetzt versucht meinem rs über folgende Zeile die 0 - ALLE hinzuzufügen.

    Code:
    Leider wird mir dann immer nur die ALLE angezeigt, und keine einzelnen Datensätze. Muss ich die MAID 0 (ALLE) evtl. mit rs.AddNew irgendwie ergänzen?

    Und in dem Quellcode steht ja DAO.Recordset drin. Ich habe jetzt woanders gesehen, dass man DAO unter Extras/Verweise aktivieren kann. Das habe ich versucht, aber es kommt ein Fehler "Name steht in Konflikt mit vorhandenem Modul, Projekt oder vorhandener Objektbibiolothek". Soll das so sein?

    Grüße vom MADDIN
     
    mad.din, 7. Januar 2015
    #15
Thema:

UFO Button Anzeigefilter

Die Seite wird geladen...
  1. UFO Button Anzeigefilter - Similar Threads - UFO Button Anzeigefilter

  2. vom Ufo aus DS im 2. Ufo wechseln

    in Microsoft Access Hilfe
    vom Ufo aus DS im 2. Ufo wechseln: Moin, ich möchte Datensätze aus zwei Tabellen miteinander verknüpfen. Dazu habe ich ein Hauptformular mit zwei Ufos gebastelt, in denen jeweils die Datensätze der beiden Tabellen endlos...
  3. 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...
  4. Abfrage innerhalb eines UFO

    in Microsoft Access Hilfe
    Abfrage innerhalb eines UFO: Hallo Ihr Lieben, hab mir schon einen Wolf gegoogelt und bis her nichts passendes gefunden*weinen Folgende Situation: Ich habe ein Formular (frmVerwaltungQryFertM_ufo), wo ich mittels...
  5. Summe ungebundener Textfelder von UFO ins HFO

    in Microsoft Access Hilfe
    Summe ungebundener Textfelder von UFO ins HFO: Hallo zusammen, ich möchte auf einem Formular eine Summe von mehrere Spalten bilden. Diese Summe soll im Anschluss von einem ungebundenen Texfeld abgezogen werden. Die Textfelder in denen die...
  6. Aus Ufo Focus auf ein Feld im Hf setzen

    in Microsoft Access Hilfe
    Aus Ufo Focus auf ein Feld im Hf setzen: Hallo, auf dem Hf frmInfo ist ein Datensatz zur Dateneingabe geöffnet. In einigen Fällen möchte ich zusätzliche Daten in einer weiteren Tabelle eintragen. Dazu wird das sfmTausch sichtbar...
  7. Bezug zum Feld im UFO

    in Microsoft Access Hilfe
    Bezug zum Feld im UFO: Hallo zusammen, ich versuche gerade, je nach dem was gefiltert wird, Summen diverser Spalten im HFO anzeigen zu lassen, jedoch funktioniert das einfach nicht. *grummel* Mein "Unterformular"...
  8. Button drücken per VBA in UFO

    in Microsoft Access Hilfe
    Button drücken per VBA in UFO: Servus, ich habe einen Button in einem Unterformular welches in einer Registerkarte ist. Nun habe ich einen Button auf dem Hauptformular, auf welchen ich drücken will und der unter anderem den...
  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