Office: (Office 2010) Unterformulare aufklappen

Helfe beim Thema Unterformulare aufklappen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hi Anne, sorry für die verspätete Antwort! Deinen Code habe ich in die Beispiel-Datei eingebaut und sie funktioniert. *Smilie Nach dem Einbau in die... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von anni92, 28. Februar 2013.

  1. Unterformulare aufklappen


    Hi Anne,

    sorry für die verspätete Antwort! Deinen Code habe ich in die Beispiel-Datei eingebaut und sie funktioniert. *Smilie

    Nach dem Einbau in die Original-Datei hatte ich ein Problem, das ich mir zunächst nicht erklären konnte. Nach langer Suche ist mir der Fehler erst gestern aufgefallen: In der von mir geposteten Beispiel-Datei in #34 fehlen in den Formularen die Codes, die dafür sorgen, dass beim Öffnen der Formulare immer ein neuer Datensatz angezeigt wird. *upps

    Wenn ich lediglich das Unterformular "frm_Artikelbestandteile" öffne und der Cursor im neuen Datensatz steht, kann ich das Formular gar nicht schließen. Habe versucht, Deinen Code zu verändern, aber ich kriege es mal wieder nicht hin. *depressed

    Ich habe jetzt die Beispiel-Datei aus #34 mit dem von Dir erstellten Code und den vorher vergessenen Codes für das Anzeigen eines neuen Datensatzes versehen und nochmals gepostet. Für eine nochmalige Hilfe wäre ich Dir seeeehr dankbar!

    Viele Grüße,
    Annika
     
  2. Hallo Annika,

    ändere diese Zeile: Code:
    mal folgendermaßen um: Code:
    Ich hatte mich die ganze Zeit schon über diesen Kommentar
    gewundert, kannst du mal erklären, wie es dazu kam? Hängt das mit dem neuen Datensatz zusammen?
     
    Anne Berg, 25. April 2013
    #47
  3. Hi Anne,

    wenn ich mit Deinen Code
    Code:
    meinen alten ersetze, erscheint beim Klicken auf einen leeren Unterform-Datensatz (was durchaus mal sein kann, wenn z.B. ein Artikel keine Artikelbestandteile enthält) folgende Fehlermeldung:
    Laufzeitfehler '3075': (Syntaxfehler (fehlender Operator) in Abfrageausdruck 'ArtBestTeile_ArtSt_ref='.
    Dein Code erzeugt eigenartigerweise diese Fehlermeldung, die ich mit meinem Code verhindere.

    Wenn im Unterform kein Datensatz vorhanden ist, kommt o.g. Fehlermeldung, kannst Du durch Deaktivierung der entsprechenden Code-Stellen ('-Setzen) auch selbst simulieren).
    Deshalb habe ich diesen Zusatz rein gesetzt - wenn also kein Datensatz vorhanden ist, kann man auch kein Popup erzeugen, was okay ist.


    Bis bald,
    Annika
     
  4. Unterformulare aufklappen

    Hallo Annika,
    Nein, der Fehler kommt, wenn im HF kein aktueller Datensatz vorhanden ist und das somit ebenfalls leere UF mit dem Key des (leeren) HFs geöffnet werden soll.

    Überleg dir bitte, wie dieser Fall sinnvoll behandelt werden könnte, dann finden wir auch die dazu passende VBA-Lösung.
     
    Anne Berg, 25. April 2013
    #49
  5. Hi Anne,

    ich bin jetzt ein wenig verwirrt.

    Ich dachte, ich hätte das Problem der Eliminierung der Fehlermeldung 3075 mit folgendem Code bereits gelöst, dies VERHINDERT ja eben die Fehlermeldung:
    Code:
    Das funktioniert meiner Meinung ja ganz gut. Ist im Unterform kein Datensatz vorhanden, lässt sich dieser nicht durch Doppelklick auf die Überschrift öffnen, das ist ja okay so.

    Mir geht es ja um die Problematik des Schließens des Unterforms, wenn man ihn allein (also ohne Hauptform) öffnet, siehe #46.

    Ich begreife jetzt nicht ganz, was das eine mit dem anderen zu tun hat.

    Viele Grüße,
    Annika
     
  6. Hallo Annika,

    ich habe jetzt den gesamten Verlauf nochmals durchgearbeitet und bin jetzt etwas irritiert. Was möchtest Du jetzt?
    Beim Öffnen des Formulars einen neuen Datensatz anlegen?
    oder
    Dir die vorhandenen Datensätze anzeigen lassen?

    Mit Code:
    setzt Du den Datensatzzeiger hinter den letzten Eintrag (siehe Beitrag #36) und zwar in beiden Formularen was eigentlich nicht nötig ist, da sich das UF auf das Hauptformular bezieht.
    Daher ergeben sich jetzt auch die erneuten Fehlermeldungen welche Anne Dir bereits erklärt hat.

    Bitte nicht falsch verstehen, mir fehlt es an der Sinnhaftigkeit ein Unterformular zu öffnen wenn passend hierzu noch kein Hauptdatensatz vorhanden ist. Insbesondere dann wenn Du von vornherein festlegst daß es mit einem neuen Datensatz geöffnet werden soll. Auch wenn das UF von Dir über die wie im Beitrag #23 beschriebene Art
    geöffnet wird, gehst Du immer zu einen neuen Datensatz zu dem auch ein Hauptdatensatz gehört. Daher auch der Lösungsvorschlag aus Beitrag #19.

    Von der ursprünglichen Aufgaben- bzw. Problemstellung ist aus den Beiträgen #34 und #39 durch Anne eine gut funktionierende Lösung bei angezeigten Datensätzen entstanden (Beitrag #45).


    Fazit: ...
    für mich hieraus wäre der Vorschlag für die Datenerfassung (Neuanlage) ein eigenes Formular mit Unterformular zu erstellen bzw. das vorhandene Formularpaar kopieren und dementsprechend anzupassen. Dieses kannst Du wie gewohnt über die Überschriften schließen.
    In diesem Zusammenhang möchte ich Deine Aufmerksamkeit nochmal auf den Beitrag #19 verweisen und das UF mit dem HF mit richtiger Beziehung erstellen um den gesonderten Fremdschlüsseleintrag zu vermeiden.

    Dies kommt dann auch Deiner Vorstellung wie in Beitrag #29
    nahe.
    Jedoch kannst Du Dich in der aktuellen Variante beim Öffnen der Formulare nie in einen bestehenden Datensatz verirren.


    Nachtrag:
    Das hat damit zu tun, daß Du mit einem neuen Datensatz beginnst. Daher werden Dir in der vorliegenden Form die Datensätze in den Formularen nicht direkt angezeigt. Du mußt immer über die Datensatznavigation entweder einen DS zurückgehen oder zum ersten DS springen damit Du das UF öffnen und schließen kannst.

    Auf gutes Gelingen.

    Gruß
    JG.
     
  7. Hi Annika,
    aber das Schließen wird dadurch ebenfalls verhindert und darum ging es doch zuletzt, oder?

    Meiner Ansicht nach ist dieser Code falsch platziert, du musst zuerst prüfen, ob geöffnet oder geschlossen werden soll und dann erst ob das Öffnen überhaupt Sinn macht (ohne passenden Key im HF).
     
    Anne Berg, 25. April 2013
    #52
  8. Unterformulare aufklappen

    Hallo Anne,

    bin jetzt zum Entschluss gekommen, Deinen Code aus #45 zu übernehmen. Der funktioniert, so wie ich ihn benötige (aus dem HF), perfekt.

    Tatsächlich öffne ich sehr selten mal die Unterforms alleine. Beim Versuch, sie gewohnheitsgemäß über die Überschrift zu schließen, wird ja dann nix passieren, da kann ich dann geschwind auf´s Kreuz oben rechts klicken und weg sind sie.

    Vielen Dank an Euch alle Beteiligten, die Ihr mir geholfen habt:
    - Anne Berg
    - JG
    - Johnny Loser
    - trekking
    - Thomas Möller
    - Rudolf Lanz
    - Eberhard

    Hoffe, ich habe niemanden vergessen.*wink.gif*

    Bis dann,
    Annika
     
  9. Hallo Annika,
    möglicherweise hast du mich nicht verstanden, oder du hattest einfach keine Lust mehr...

    Aber da ich nichts von halben Lösungen halte, möchte dich mit dem folgenden Anhang von der Machbarkeit deiner Idee überzeugen.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Anne Berg, 27. April 2013
    #54
  10. Hi Anne,

    oh je, hätte ich nicht noch ein Anliegen gehabt, hätte ich diesen Thread wohl nicht mehr aufgerufen und dadurch Deine Antwort wohl total übersehen, da ich ja den Thread als "erledigt" gesetzt hatte. *upps

    DESHALB: DANKE FÜR DIESEN ZUSATZ-BONBON!!! *happy

    Und jetzt mein Anliegen - habe deshalb den Thread wieder aktiviert: Habe mit dem Umbau meiner Datenbank begonnen und zuerst den Code aus #19 eingebaut.
    Code:
    Hier wird beim Ausfüllen des Popups die Hauptform-Referenz-ID ins Unterform eingetragen.

    Das hat auch mit meinen Form/Unterform-Kombinationen super geklappt, bis ich auf ein Formular mit der Kombination Form/Unterform/Unterunterform, also quasi einer 3-fach-Hierarchie gestossen bin, von denen ich auch einige in der Datenbank habe. Hier soll die Referenz-ID des Unterforms ins Unterunterform eingetragen werden.

    Und das funktioniert überhaupt nicht, ich habe zigmal Buchstabe für Buchstabe auf richtige Schreibweise überprüft. Es kommt immer die Fehlermeldung: "Laufzeitfehler 2450: Microsoft Access kann das entsprechende Unterform nicht finden, auf das verwiesen wird".
    Ich verstehe das nicht, das Unterform ist doch da, das ist echt zermürbend!

    Kann der Code nicht für diese 3-Fach-Hierarchie angewendet werden?

    Bis dann,
    Annika
     
  11. Warum zeigst du nicht gleich den Code dazu?!
    Ich kann mir aber schon denken, was du falsch machst, denn mit "Forms!NamedesUnterformulars!ID" geht es nicht. Unterformulare sind nur über das Steuerelement im Hauptformular anzusprechen: Forms!HF_Name!UF_ControlName.Form!ID. Oder aber von unten nach oben mit Hilfe von Me.Parent.Form!ID, was ich auf jeden Fall bevorzugen würde.
     
    Anne Berg, 29. April 2013
    #56
  12. Hi Anne,

    habe Deinen Vorschlag aus dem letzten Posting umgesetzt, hat nicht geklappt.
    Deshalb habe ich einfachheitshalber mal meine bereits gepostete Datei um das U-Unterform "frm_Chargen" erweitert und dort Deinen Code platziert.

    Viele Grüße,
    Annika
     
    anni92, 1. Mai 2013
    #57
  13. Unterformulare aufklappen

    Hallo Annika,

    beschreibe bitte ganz genau was unter welchen Voraussetzungen nicht erwartungsgemäß funktioniert, dann lässt sich sicherlich eine Lösung finden.

    Mit "hat nicht geklappt" kann man nichts anfangen.
     
    Anne Berg, 1. Mai 2013
    #58
  14. Hallo Anne,

    hier eine kurze Erklärung (hoffe, sie ist verständlich):

    Folgendes funktioniert (gemäß Johnny Loser aus #19):
    Öffne ich das Unterform "frm_Artikelbestandteile" als Popup, trage dort Daten ein, wird im Feld "ArtBestTeile_ArtSt_ref" die Ref-ID des Hauptforms "frm_Artikelstamm" gesetzt.

    Folgendes funktioniert eine Hierarchiestufe tiefer NICHT:
    Öffne ich das Unter-Unterform "frm_Chargen" als Popup, trage dort Daten ein, wird im Feld "Ch_ArtBestTeile_ref" die Ref-ID des Unterforms "frm_Artikelbestandteile" NICHT gesetzt und es erscheint eine Fehlermeldung.

    Was also von Unterform zu Hauptform funktioniert, funktioniert nicht von Unter-Unterform zu Unterform.

    Bis dann,
    Annika
     
    anni92, 2. Mai 2013
    #59
  15. Hi Annika, Code:
    Me.Parent kann nicht funktionieren, wenn das Formular separat geöffnet wird, also musst du auch hier auf das im Himtergrund geöffnete Formular zugreifen, und zwar mit: Code:
    Hättest du gleich gezeigt, wie du es versucht hast und welche Fehlermeldung gekommen ist, wäre das Rätsel schneller gelöst worden.
    Soweit nochmal zum Thema "funktioniert nicht"!
     
    Anne Berg, 2. Mai 2013
    #60
Thema:

Unterformulare aufklappen

Die Seite wird geladen...
  1. Unterformulare aufklappen - Similar Threads - Unterformulare aufklappen

  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 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...
  6. Spaltenposition in Unterformular ermitteln

    in Microsoft Access Hilfe
    Spaltenposition in Unterformular ermitteln: Hallo, ich habe ein Unterformular erstellt, welches auch direkt editierbar ist. Das funktoniert soweit gut. Nun möchte ich in VBA aber abfragen in welcher Spalte der Cursor aktuell steht. In...
  7. Formular/ Unterformular/ m:n Beziehung

    in Microsoft Access Hilfe
    Formular/ Unterformular/ m:n Beziehung: Hey Ihr Lieben, ich versuche nun ein schickes Formular zu erstellen. Von der Haupttabelle gehen ca. acht 1:n Tabellen ab, hiervon ca. vier n:m Tabellen. Mein Ziel: Das Formular so weit es geht...
  8. ID von Unterformular auf Registersteuerelement auslesen

    in Microsoft Access Hilfe
    ID von Unterformular auf Registersteuerelement auslesen: Hallo, ich hoffe mir kann jemand weiterhelfen. Normalerweise lese ich das ID-Feld wie folgt bei einem Unterformular auf einem Hauptformular aus:...
  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