Dynamisches UFO in Access

Von: , Frage gestellt am Di, 17. Jun 2008

Liebe Wissenden,

habe ein Problem.
ich habe folgenden Code mit dem ich per Buttonklick ein bestimmtes Formular öffnen kann:
Code:
Private Sub Befehl4_Click()
If IsNull(Me!Amb) Then
MsgBox "Bitte erst Formular auswählen!"
Exit Sub
End If
On Error Resume Next
DoCmd.OpenForm Me!Amb, acNormal
If Err.Number = 2103 Then MsgBox "Bericht unbekannt"
On Error GoTo 0
End Sub
Alles klappt, doch das neue Formular öffnet sich in einem neuen Fenster. Wie schaffe ich es, dass je nach Wahl der Form das jeweils neue Formular sich einem UFO öffnet? Ich möchte somit nicht, dass sich immer wieder neue Fenster öffnen sodern die Quelle für das UFO sich anpasst.

Bei Formularen mit gleicher Tabelle als Ursprung geht es glaube ich so :
Forms!Haupt![UFO1].SourceObject = "Me!Amb"

Bin ratlos, bitte dringend um Hilfe!!!

Besten Dank!
Gruß
Igor

5 Antworten zu dieser Frage

  1. Antwort von nach 14 Minuten 0 hilfreich
    Re: Dynamisches UFO in Access

    Hallo, Igor! Bei Formularen mit gleicher Tabelle als Ursprung geht es
    glaube ich so :
    Forms!Haupt![UFO1].SourceObject = "Me!Amb"
    Genau so sollte es laufen, unabhängig davon, welche Datenquelle zugrundeliegt. Interessant wird es höchstens, wenn die Daten im Unterformular gefiltert werden sollen basierend auf dem aktuellen Datensatz im Hauptformular. Da findest Du dann nähere Infos unter den .LinkMasterFields und .LinkChildFields-Eigenschaften des Unterformulars (oder auf Deutsch: Verknüpfen Von und Verknüpfen Nach).

    Eine Alternative wäre vielleicht, dass Du statt der Auswahl eines anzuzeigenden Unterformulars die vorhandenen Unterformulare in ein Registersteuerelement mit einer Seite für jedes Unterformular verfrachtest. Ist nett, sieht hübsch aus, ist Windows-konform und einfach und ohne Programmierung umsetzbar.

    Gruß, Manfred

    • Antwort von nach 28 Minuten 0 hilfreich
      Re^2: Dynamisches UFO in Access

      Hallo Manfred,

      danke für die schnelle Rückmeldung. Es müsste zwar mit:

      Forms!Haupt![UFO1].SourceObject = "Me!Amb"

      gehen. Das Problem ist, dass die Formulare nicht die gleiche Tabelle als Datenbasis haben. Kann ich es in dem FAll auch tun?

      Zu deinem zweiten Vorschlag. Klingt supi. Das Problem ist, dass ich 4 Organisationseinheiten habe und pro Organisationseinheit teilweise bis zu 4 Untereinheiten. Ich komme somit auf 14 UFOs. Ist es überhaupt dem Rechner zuzumuten? Man könnte natürlich 4 Haupt-Register anlegen und pro Haupt-Register mehrere Unterregister. Ist es sinnvoll?

      Danke!!!
      Gruß, Igor

      • Antwort von nach 39 Minuten 0 hilfreich
        Re^3: Dynamisches UFO in Access

        Hallo, Igor! danke für die schnelle Rückmeldung. Es müsste zwar mit:
        Forms!Haupt![UFO1].SourceObject = "Me!Amb"
        gehen. Das Problem ist, dass die Formulare nicht die gleiche
        Tabelle als Datenbasis haben. Kann ich es in dem FAll auch
        tun?
        Ja. Das ist bei mir i. d. R. eigentlich immer so, dass UFO und HF unterschiedliche Datenquellen haben. Zu deinem zweiten Vorschlag. Klingt supi. Das Problem ist,
        dass ich 4 Organisationseinheiten habe und pro
        Organisationseinheit teilweise bis zu 4 Untereinheiten. Ich
        komme somit auf 14 UFOs. Ist es überhaupt dem Rechner
        zuzumuten? Man könnte natürlich 4 Haupt-Register anlegen und
        pro Haupt-Register mehrere Unterregister. Ist es sinnvoll?
        Das finde ich nicht so wild. Probier es einfach aus. Du musst ja noch nicht die UFOs einbauen. Schau Dir einfach an, wie es aussieht und wie gut man damit arbeiten kann.

        Gruß, Manfred

        • Antwort von nach 58 Minuten 0 hilfreich
          Re^4: Dynamisches UFO in Access

          Lieber Manfred,

          zur Option 1:
          Ich habe jetzt eine Beispieldatei erstellt mit zwei Tabellen und einem Formular. Im Formular ist ein Kombinationsfeld mit der Auswahl der Formulare, ein Button mit folgendem Code:

          Private Sub Befehl2_Click()
          If IsNull(Me!Amb) Then
          MsgBox "Bitte erst Formular auswählen!"
          Exit Sub
          End If
          On Error Resume Next
          Forms!Haupt![UFO].SourceObject = "Me!Amb"
          If Err.Number = 2103 Then MsgBox "Formular unbekannt"
          On Error GoTo 0
          End Sub

          und ein UFO in welchem ich die anderen UFOs angezeigt haben möchte. Ich drücke den Button und es passiert nichts. Wo habe ich da den Fehler gemacht?

          Gruß
          Igor

          • Antwort von nach 22 Stunden 0 hilfreich
            Re^5: Dynamisches UFO in Access

            Lieber Manfred,

            zur Option 1:
            Ich habe jetzt eine Beispieldatei erstellt mit zwei Tabellen
            und einem Formular. Im Formular ist ein Kombinationsfeld mit
            der Auswahl der Formulare, ein Button mit folgendem Code:

            Private Sub Befehl2_Click()
            If IsNull(Me!Amb) Then
            MsgBox "Bitte erst Formular auswählen!"
            Exit Sub
            End If
            On Error Resume Next
            Forms!Haupt![UFO].SourceObject = "Me!Amb"
            If Err.Number = 2103 Then MsgBox "Formular unbekannt"
            On Error GoTo 0
            End Sub

            und ein UFO in welchem ich die anderen UFOs angezeigt haben
            möchte. Ich drücke den Button und es passiert nichts. Wo habe
            ich da den Fehler gemacht?
            Hier:

            Forms!Haupt![UFO].SourceObject = Me!Amb


            Gruß
            Franz,DF6GL

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!