Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Mark77 am März 10, 2023, 13:21:01

Titel: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: Mark77 am März 10, 2023, 13:21:01
Hallo,

ich versuche verzweifelt von Outlook aus eine Checkbox in Access abzufragen.
Leider finde ich nichts im Netz und meine Kenntnisse sind sehr überschaubar.....

Dim objAccess As Access.Application
              Set objAccess = GetObject(, "Access.Application")
               
                objAccess.DoCmd.OpenForm "frmHauptseite"
                objAccess.DoCmd.GoToControl "MailUmleitung"
               
                If Me.MailUmleitung Then
               
                    MsgBox "Checkbox markiert"
               
                Set objAccess = Nothing
                End If
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: MzKlMu am März 10, 2023, 13:36:52
Hallo,
wenn schon, musst Du mit DLookup eine Tabelle abfragen, denn die Daten liegen ja in Tabellen und nicht in Formularen. Und wahrscheinlich muss auch noch auf einen bestimmten Datensatz referenziert werden.
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: Mark77 am März 10, 2023, 13:49:32
Hallo,

von meiner Nachricht fehlt leider irgendwie die Hälfte:
Ich habe in Access eine Checkbox "MailUmleitung" in dem Formular "frmHauptseite" die ich von Outlook aus prüfen möchte ob sie markiert ist oder nicht.

Mit obigem Code komme ich auch soweit, dass der Focus auf die Checkbox gesetzt wird.
Allerdings bekomme ich es nicht hin den Status abzufragen.

Hier liegt das Problem -> If Me.MailUmleitung Then

Ich habe schon alles mögliche versucht aber immer bekomme ich Fehler....
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: MzKlMu am März 10, 2023, 14:02:41
Hallo,
ich habe da keine Erfahrung dazu.
Aber vieleicht hilft es ja schon die Bedingung vollständig zu nutzen.
If Me.MailUmleitung = True ThenDer Focus muss nicht zwingend auf die Checkbox gesetzt werden. Wenn das Formular offen ist, spielt zum Abfragen eines Feldes der Focus keine Rolle.
Und wie gesagt, Formulare speichern keine Daten, bist Du sicher, dass im Fomular auch der richtige Datensatz angezeigt wird ?
Ist das Formular an eine Datenquelle gebunden und ist die Checkbox an ein Tabellenfeld gebunden ?
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: Mark77 am März 10, 2023, 14:14:35
Es geht nur um den Haken in der Checkbox in dem geöffneten Formular. An oder aus. Sonst werden keine Daten abgerufen.
Dadurch wird eine Weiterleitung in Outlook gesteuert. Ist die Checkbox gesetzt werden die eingehenden Mails weitergeleitet. Ist sie leer passiert nichts.

Methode oder Datenobjekt nicht gefunden, diese Fehlermeldung bekomme ich immer.

Auch bei "If Me.MailUmleitung = True Then" bekomme ich eine Fehlermeldung.

Die Checkbox ist ungebunden.
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: MzKlMu am März 10, 2023, 14:23:36
Hallo,
ZitatDie Checkbox ist ungebunden.
dann kann es ohnehin nicht funktionieren. Ein gesetzter Haken wird ja nicht gespeichert, das heißt, beim Öffnen des Formulars ist die Checkbox immer NULL (Leer).
Unabhängig von der Fehlermeldung kann das niemals funktionieren.
Die Checkbox muss zwingend gebunden sein.

Kannst Du ja selbst ausprobieren, öffne das Formular, setze den Haken, schließe das Formular, öffne es anschleißend wieder. Was macht der Haken ?
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: markusxy am März 10, 2023, 16:31:38
Zitat von: Mark77 am März 10, 2023, 14:14:35Auch bei "If Me.MailUmleitung = True Then" bekomme ich eine Fehlermeldung.

Weist du was Me bedeutet?

Me bezieht sicher immer auf das aktuelle Objekt.
Der Code kann also nur funktionieren, wenn er innerhalb eines Formulares ausgeführt wird.
So bezieht er sich auf das Objekt in dem er ausgeführt wird - also im besten Fall ein Outlook Klassenmodul.
Eine ordentliche Referenzierung würde also z.B. so aussehen, falls sich das Control im Hauptformular befindet:

objAccess.Forms!Formularname!Steuerelement

Aber mir scheint es sich hier um einen größeren Murx zu handeln.
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: ebs17 am März 10, 2023, 16:51:39
DoCmd-Zeugs und Objektbezüge sind keine kooperierenden Partner.
Dim objAccess As Access.Application
' Formular und CheckBox dürften in einer konkreten Datei liegen, nicht beliebig in "Access"
Set objAccess = GetObject("X:\AnyWhere\AnyDB.accdb")
objAccess.DoCmd.OpenForm "frmHauptseite"
With objAccess.Forms("frmHauptseite")
   MsgBox .MailUmleitung
End With
               
Titel: Re: Zugriff auf Checkbox in Access von Outlook aus
Beitrag von: Mark77 am März 10, 2023, 17:41:18
Vielen Dank für alle Antworten.

@markusxy, danke, das war schon die Lösung.
Ich habe schon soviel versucht, dass wohl immer eine Kleinigkeit falsch war.
Das mit dem Me. war nur ein letzter Versuch der aber natürlich auch nicht ging....

Nun funktioniert es so wie es soll.

Nochmals Danke an alle.