Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: MrMojoRisin am Oktober 02, 2017, 10:29:00

Titel: Private Function aufrufen von anderem Formular aus mit variablem Formularnamen
Beitrag von: MrMojoRisin am Oktober 02, 2017, 10:29:00
Hallo,

ich habe eine Private Function, die ich gerne aus einem anderen Formular heraus aufrufen würde. Die Unterformulare sind durchnummeriert, deswegen würd ich das einfach in einer inkrementellen Schleife lösen.

Ich bekomms aber gerade nicht hin, auch die Suche hilft nicht weiter, alles was ich probiere, läuft auf nen Fehler hinaus.

Mein letzter Versuch...

Call Forms("frm_Main.Form("ufrm_Main_" & intInkrement)").myFunction

Dank euch schon mal
Titel: Re: Private Function aufrufen von anderem Formular aus mit variablem Formularnamen
Beitrag von: daolix am Oktober 02, 2017, 11:18:15
hallo
eine private function ist halt privat, von aussen nicht aufrufbar. mach daraus eine public function oder erstell in dem formular in den die private function zuhause ist eine public function die die private dann aufruft
Titel: Re: Private Function aufrufen von anderem Formular aus mit variablem Formularnamen
Beitrag von: Beaker s.a. am Oktober 02, 2017, 13:51:44
Hallo,
Versuche
Call Forms("frm_Main").Control("ufrm_Main_" & intInkrement).Form.myFunction
Wenn das überhaupt geht; - bin nicht sicher und will's jetzt auch nicht
testen. Denn wie es aussieht gibt es "myFunction" wohl auf mehreren
UFo. Nicht wissend, was diese macht, würde ich die aber wohl Public
in einem allgemeinen Modul unterbringen.
gruss ekkehard
Titel: Re: Private Function aufrufen von anderem Formular aus mit variablem Formularnamen
Beitrag von: MrMojoRisin am Oktober 04, 2017, 10:39:04
Also mein eigentliches Probem ist, dass ich die Zeit des Zeitgebers steuern möchte. Heißt .TimerInterval = 0 zum Ausschalten der Aktualisierung oder eben mit Wert > 0, um dieses zu aktivieren.

Das wird natürlich von einem allgemeinen Modul aus gesteuert. Aber wenn ich die Eigenschaft .TimerInterval anspreche, dann bringt mir Access einen Fehler. "Objekt unterstützt diese Eigenschaft oder Methode nicht"

Wenn ich das direkt in einer Private Sub / Function mache, dann nicht, dann läuft es ohne Probleme.
Titel: Re: Private Function aufrufen von anderem Formular aus mit variablem Formularnamen
Beitrag von: Josef P. am Oktober 04, 2017, 10:47:38
ZitatDas wird natürlich von einem allgemeinen Modul aus gesteuert.
Warum "natürlich"? - Es könnte doch auch von einer Hilfsklasse aus gesteuert werden. ;)

ZitatAber wenn ich die Eigenschaft .TimerInterval anspreche, dann bringt mir Access einen Fehler. "Objekt unterstützt diese Eigenschaft oder Methode nicht"
Dann hat vermutlich das Objekt, das du ansprichst, diese Eigenschaft nicht.

Dim frm As Form

set frm = ???
frm.TimerInterval = 0

Wenn du in diesem Code die ??? durch deine Formularrefrenz ersetzt, sollte die Eigenschaft Timerinterval einstellbar sein.

mfg
Josef