Office: (Office 2010) Formular mit Suchfeld auf Unterformular

Helfe beim Thema Formular mit Suchfeld auf Unterformular in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Guten Tag, Bin dabei mich nach längerer Zeit wieder etwas in Access 2010 einzuarbeiten. Meine letzten Erfahrung habe ich in der Schule mit der Version... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von AllenWalker86, 2. November 2013.

  1. Formular mit Suchfeld auf Unterformular


    Guten Tag,

    Bin dabei mich nach längerer Zeit wieder etwas in Access 2010 einzuarbeiten. Meine letzten Erfahrung habe ich in der Schule mit der Version 2000 gesammelt.
    Ich habe eine Datenbank erhalten mit vorgefertigten Tabelle und Relationen. Ich bin dabei ein Formular zu erstellen welches Suchkriterien enthält über die in einem Unterformular die Suchergebnisse anzeigt.

    Die Suchkriterien sind Aktiv/Archiv (Tabelle: AktivArchiv und enthält 2 Datensätze), Kontaktart (Tabelle: Kontaktart und enthält 5 Datensätze) und Standort (Tabelle: Standort und enthält 7 Datensätze). Die Daten sind vom Typ String. Zusätzlich zu diesen angegebenen Datensätzen enthalten die Tabellen den Datensatz "_Alle" (_ stellt ein Leerzeichen dar) um alle Werte bei der Auswahl von "_Alle" an zu zeigen. Als Hilfestellung diente mir folgende Seite. So richtig konnte mir die Seite noch nicht weiter helfen bei der Umsetzung. Als weitere Suchkriterien dienen ungebundene Felder mit Namen und Vornamen.

    Im VBA Quellcode nutze ich die AfterUpdate Ereignisse der Kombifelder (Standort, Kontaktart, AktivArchiv) und für die Text-Felder die OnChange Ereignisse. (Ich benutze eine englischsprachige Version von Access 2010)

    Mein momentaner Quellcode für die Umsetzung
    Code:
    Ich bekam als Hinweis eine Funktion für die Überprüfung des gewählten Wertes der Kombifelder zu überprüfen und darüber den String für die "RecordSource" des Unterformulars zu verwenden. So ganz will der Funke nicht überspringen ob ich dazu eine "IF-THEN-ELSE" Abfrage nutzen soll oder die Wertabfrage der Kombifelder mit der ODER-Verknüpfung zu überprüfen.

    Bei der Auswahl von "_Alle" wird nichts im Unterformular angezeigt. Das Gleiche passiert wenn ich versuche etwas in den Textfeldern einzugeben und wenn ich bei den Kombifeldern einen anderen Wert auswähle.

    Als zusätzlichen Punkt möchte ich gerne das beim Öffnen des Formulares in den 3 Kombifeldern der Wert "_Alle" für alle Datensätze erscheint.

    Danke sehr,
    Gruß,
    AllenWalker86

    :)
     
    AllenWalker86, 2. November 2013
    #1
  2. Moin,
    diese Codes schreien geradezu nach einem dynamischen Zusammensetzen ...
    Code:
    Bei den einzelnen Feldern dann:
    Code:
    Das erspart auch das "Alle", du kannst die Felder einfach leer lassen.
    Falls du "Alle" aus Darstellungsgründen beibehalten möchtest, musst du halt auf den Wert von Alle statt auf IsNull prüfen.

    maike
     
  3. Danke für die Antwort.

    Ich habe den Schnipsel der Funktion übernommen und entsprechend erweitert. Habe mir in der letzten IF-Abfrage aus Neugier den String ausgegeben und dabei festgestellt, dass der Inhalt der Textfelder nicht mit übernommen wird in die spätere Abfrage.

    Möchte gerne das "Alle" mit übernehmen im Formular. Dieser Wert soll auch beim Öffnen des Formulares angezeigt werden. Bisher bin ich noch nicht fündig geworden wie und wo ich das machen könnte.

    Die Abfrage habe ich versucht auch so zu ändern, dass anstelle von isnull auf den Wert "Alle" überprüft wird. Im folgenden ein Ausschnitt der Funktion MakeRecordSource.
    Code:
    Der Wert "3" entspricht dabei dem Primärschlüssel des Wert "Alle".

    Danke sehr,
    Gruß,
    AllenWalker86
     
    AllenWalker86, 5. November 2013
    #3
  4. Formular mit Suchfeld auf Unterformular

    Hi, die Umsetzung für "Alle" sollte so funktionieren. Wie sieht denn der Code bei den Textfeldern aus, bzw. was hat die Ausgabe des Strings ergeben?
    maike
     
  5. Folgenden String erhalte ich als Ausgabe wenn ich bei allen Feldern was eingebe.

    Die Inhalte der beiden Textfelder werden ignoriert. Für die beiden Felder rufe ich in dem Ereignis "Change" die Funktion "RecordSource" auf. In der Funktion werden die Textfelder auf folgendem Weg abgefragt.

    Code:
    Eine kleine Sache nebenbei. Warum werden meine anderen Probleme bzw. Wünsche übersehen?

    Danke sehr,
    Gruß,
    AllenWalker86
     
    AllenWalker86, 5. November 2013
    #5
  6. Hi,

    du könntest mal eine Demo-Version mit dem aktuellen Stand hochladen, sonst wird das wohl etwas mühsam, aus der Ferne zu der von dir gewünschten Lösung zu kommen.
     
    Anne Berg, 5. November 2013
    #6
  7. Der folgende Link beinhaltet eine Beispieldatenbank mit meinem genannten Problem.

    Danke sehr,
    Gruß,
    AllenWalker86
     
    AllenWalker86, 5. November 2013
    #7
  8. Formular mit Suchfeld auf Unterformular

    Code sieht ok aus.
    Stell mal fest (per Debug.Print), welchen Wert die Textfelder beim Ereignis Change und jeweils zur Laufzeit von Sub MakeRecordSource (nicht RecordSource) haben, bzw. ob die Ereignisse überhaupt eintreten. Was ergibt der String, wenn die Textfelder Text enthalten und danach wieder eins der Kombis verändert wird?
    Heul doch *grins . Aber IMHO sollte es reichen, bei den Kombis einfach den entsprechenden Wert als Standardwert einzustellen.
    maike
     
  9. Das Problem mit den Textfeldern wurde folgendermaßen gelöst.
    Code:
    Die rot markierten Eigenschaft hat gefehlt.

    Was ich noch nicht hinbekommen habe ist für den Wert "Alle" das alle Datensätze angezeigt werden und als Standardwert beim Öffnen des Formulars angezeigt wird. Der bisherige Versuch mit folgender Codezeile bei der Eigenschaft "Default Value" des Kombifeldes blieb erfolglos.

    Code:
    Danke sehr,
    Gruß,
    AllenWalker86
     
    AllenWalker86, 5. November 2013
    #9
  10. .Text - klar, wegen Change-Ereignis, da ist Value nicht passend.
    Code:
    statt der Prüfung auf IsNull und bei den anderen Feldern entsprechend sollte funktionieren, vorausgesetzt der PK ist die erste Spalte im Kombi. Kann leider dein Beispiel nicht ansehen, ich arbeite mit Version 2003.
    Für den Standardwert in den Eigenschaften einfach nur die 3 eintragen.
    maike
     
  11. Habe die Zeile

    Code:
    durch die Zeile

    Code:
    ersetzt, aber wenn ich zum Beispiel bei dem Kombinationsfeld "AktivArchiv" alle aktiven Kunden auswähle und dann wieder auf "Alle" gehe, verbleibt das Unterformular bei dem vorherigen Ergebnis und zeigt nicht alle Datensätze an.

    Kompletter Codeschnipsel für das Kombifeld "cbAktivArchiv"

    Code:
    Danke sehr,
    Gruß,
    AllenWalker86
     
    AllenWalker86, 5. November 2013
    #11
  12. Hi.
    dazu hätte ich folgenden Vorschlag: Code:
    Analog dazu verfährst du bei den anderen Kombifeldern.

    PS:
    Die Text-Eigenschaft kannst du nur auswerten, wenn das Feld den Fokus hat. Da fliegt dir die Sache nach Eingabe eines Nachnamens also spätestens bei Eingabe des Vornamens um die Ohren. Setzt du jedoch vorher den Fokus auf das auszuwertende Feld, verlierst du die Position zum Fortschreiben des Namens. Evtl. solltest du hier auf das Change-Ereignis verzichten und ganz normal im AfterUpdate reagieren.

    Nachtrag:
    Oder so: Code:
    Nachtrag-2:
    Und da fehlt auch noch etwas: Code:
     
    Anne Berg, 5. November 2013
    #12
  13. Formular mit Suchfeld auf Unterformular

    Moin, poste doch mal den Code komplett (Sub MakeRecordSource und die einzelnen Felder).
    maike
     
  14. Hier der komplette Quellcode für das Formular
    Code:
    Für die Kombifelder wurde als Standardwert jeweils der Primärschlüssel für den Wert "Alle" eingesetzt, damit dieser Wert beim Start des Formulars angezeigt wird.

    Der Wechsel von einem Wert eines Kombifeldes zurück zu dem Wert "Alle" zeigt immer noch das Ergebnis des vorherigen Wertes an.

    Neu dazugekommen ist noch wenn die Textfelder gelöscht werden, nicht alle Kunden wieder angezeigt werden sondern es verbleibt der über die Textfelder gesuchte Kunde.

    Folgender Link beinhaltet die zweite Version der Beispieldatenbank.

    Danke sehr,
    Gruß,
    AllenWalker86
     
    AllenWalker86, 6. November 2013
    #14
  15. Du hast meine Änderungen (#12) nicht vollständig beachtet, ich habe vom Setzen der RecordSource auf Filterung umgestellt.

    Außerdem stimmen die Indexwerte für "Alle" nicht mehr für alle Kombifelder.
     
    Anne Berg, 6. November 2013
    #15
Thema:

Formular mit Suchfeld auf Unterformular

Die Seite wird geladen...
  1. Formular mit Suchfeld auf Unterformular - Similar Threads - Formular Suchfeld Unterformular

  2. Suchfeld in Formular

    in Microsoft Access Hilfe
    Suchfeld in Formular: Hallo zusammen Ich bin eine Datenbank am erstellen, wo ich Mitarbeiter und Kurse erfassen kann und schlussendlich den Mitarbeitern die besuchten Kurse zuteilen. Nun habe ich ein Formular...
  3. Formularsteuerelement Textfeld: Selbe Formatierung wie verlinkte Zelle?

    in Microsoft Excel Hilfe
    Formularsteuerelement Textfeld: Selbe Formatierung wie verlinkte Zelle?: Hallo, ich bin ja gerade dabei ein Bestellformular mit Excel zu realisieren. Das ganze sieht soweit auch schon sehr gut aus und funktioniert weitgehendst. Die Textfelder sind nun alle verlinkt...
  4. Word Steuerelemente/Formular erstellen

    in Microsoft Word Hilfe
    Word Steuerelemente/Formular erstellen: Hallo, ich möchte ein Formular mit 20 kleinen Textfeldern erstellen, die auf einer Seite an vordefinierten Stellen sind. Das fertige Formular soll so angewendet werden, dass ich in die 20...
  5. Aktuelles Datum und Uhrzeit in Formular

    in Microsoft Word Hilfe
    Aktuelles Datum und Uhrzeit in Formular: Hallo, zunächst ein herzlichen Dank für die Aufnahme in diesem Forum und hoffe, dass mir jemand bei meinem Problem behilflich sein kann. Ich bin aktuell dabei ein Formular zu erstellen. Das...
  6. Access Neuer Datensatz im Formular

    in Microsoft Access Hilfe
    Access Neuer Datensatz im Formular: Hallo - ich bin neu hier und Anfängerin im VBA Programmieren. Ich habe eine Frage zu VBA: In meinem Formular kann ich Daten eingeben, wenn ich das Formular wieder öffne, wird der letzte...
  7. Suchfeld z.b. <25 in Formular

    in Microsoft Access Hilfe
    Suchfeld z.b. <25 in Formular: Hallo zusammen ich bin Neuling im Bereich Access, konnte mir aber dank Internet und Buch schon einiges aneignen. Zu meiner Frag: ich habe ein Formular das eine Abfrage als Inhalt benutzt. Ich habe...
  8. Suchfeld im Formular

    in Microsoft Access Hilfe
    Suchfeld im Formular: Hallo, neues Thema, weil das eben auch für mich neu ist. Habe in meiner (mit Hilfe von Usern hier) inzwischen sehr guten DB ein endlos Hauptformular erstellt und optisch gestaltet. Jetzt fehlt...
  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