Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Fehler Ereignis, aber nur in Runtime

Begonnen von zoulhh, März 04, 2017, 10:16:25

⏪ vorheriges - nächstes ⏩

zoulhh

Hi zusammen,

ich komme mal wieder nicht weiter. Ich habe ein Formular mit Kombifelder und Textfeldern usw. Dort habe ich in den Eigenschaften "Ereignis -> Bei Fokuserhalt" folgendes eingebeben:

=meine_funktion()

Das funktioniert auch alles wunderbar bis ich eine accde erstelle UND diese in einer reinen Runtime Umgebung läuft. Dann kommt die angehängte Fehlermeldung.

Dabei ist es völlig egal ob das Ereignis "Bei Fokuserhalt" oder sonst etwas ist und es ist auch egal, was in der Funktion steht. Sie könnte auch leer sein.

Kann es sein, dass ich einen Verweis auf eine DLL setzen muss? Und wenn ja, auf welche?

Ich habe gegoogelt und alles mögliche. Ich verstehe es nicht.

Danke.

LGM

DF6GL

Hallo,

Steht die Funktion in einem Standard-Modul?
Ist in ALLEN Modulköpfen Option Explicit vorhanden?
Ist die DB damit ohne Fehler  kompilierbar?

Poste den kompletten Code der Funktion erkläre, WO sie steht..
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

zoulhh

Zitat von: DF6GL am März 04, 2017, 10:41:16
Steht die Funktion in einem Standard-Modul?
Ist in ALLEN Modulköpfen Option Explicit vorhanden?
Ist die DB damit ohne Fehler  kompilierbar?

Poste den kompletten Code der Funktion erkläre, WO sie steht..

Hi Franz,

Sie steht in den Klassenobjekten. Ja, Option explicit ist vorhanden. Ja, sie ist kompilierbar und alles läuft auch rund in der Office Vollversion. Auch als accde. Aber nicht auf einem Rechner, auf dem nur die Runtime installiert ist. Dort tritt der Fehler auf. Der Code der Funktion ist dabei egal. Sogar

private (oder public) function huhu()
end function

läuft nicht.

Auf dem Runtime Rechner laufen X andere Formulare einwandfrei. Nur eben dies nicht.

LGM

DF6GL

Hallo,


ZitatSie steht in den Klassenobjekten

Schreib die Funktion(en) in eine Standardmodul

z. B. im Modul1:


Option Compare Database
Option Explicit

Public Function huhu()
Msgbox "huhu"
End Function
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

zoulhh

Zitat von: DF6GL am März 04, 2017, 11:01:48


Schreib die Funktion(en) in eine Standardmodul


Danke Franz, aber das ändert nichts.

LGM

DF6GL

Hallo,

lad mal eine Beispiel-Db hier hoch, an der das nachzuvollziehen ist.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

zoulhh

Zitat von: DF6GL am März 04, 2017, 11:15:29

lad mal eine Beispiel-Db hier hoch, an der das nachzuvollziehen ist.

Hi Franz,

danke für Deine Hilfe. Habe Beispiel erstellt. Aber da funktioniert es leider.

In dem Problemprojekt funktionieren Ereignisse als Sub auch, nur nicht, wenn ich sie im Ereignis als "=meinefunktion()" aufrufe. Und das, wie gesagt, auch nur in der Runtime nicht. Ich werde hier noch irre.

LGM

DF6GL

Hallo,



ZitatAber da funktioniert es leider.

Also auch mit der Rumtime?  <edit>   ääh, ich meine RunTime,   8)    ;D  </edit>



dann bleibt nur noch das Hochladen/Korrektur der Problem-DB, weil dort nur das Problem auftritt ...


Zitatfunktionieren Ereignisse als Sub auch

lässt mich stutzen:   Es funktionieren da nur "Function"s , keine "Sub"s...


Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

zoulhh

Zitat von: DF6GL am März 04, 2017, 12:16:46

Zitatfunktionieren Ereignisse als Sub auch

lässt mich stutzen:   Es funktionieren da nur "Function"s , keine "Sub"s...

Subs funktionieren. Wenn Sie in den Eigenschaften ganz normal mittels der Auswahl "..." eingebunden sind. Funktionen, die Du in den Eigenschaften als "=meinefunction()" einbindest, geben den bekloppten Fehler aus. Aber nur in der Runtime. In der Vollversion gehts. Auch, wenn Du die Vollversion mit "/RUNTIME" aufrufst, geht alles.

In einem anderen Formular (auf dem Runtime Rechner) habe ich auch "=meinefunktion()" als Ereignis stehen. Da geht es auch.

Vielleicht ist auch von Interesse, dass beim ersten Aufruf, wenn ich das problematische Feld aufrufe nach MSOUTL.OLB gesucht (und gefunden) wird. Das passiert bei dem Formular, in dem "=meineFunktion()" funktioniert, nicht.

Oh Mann. Ich weiß, wie irre sich das anhört.

LGM

Lachtaube

Das Problem dürften dann abweichende Verweise auf dem Rechner mit der Runbtime sein. Stelle Deine Outlook-Automatisierung auf Late-Binding um.
Grüße von der (⌒▽⌒)

zoulhh

Zitat von: Lachtaube am März 04, 2017, 13:05:22
Das Problem dürften dann abweichende Verweise auf dem Rechner mit der Runbtime sein.

Nö. Er findet sie ja letztlich. Hab es nur für die Fehlereingrenzung erwähnt, dass er just in dem Moment danach sucht, wenn das Ereignis ausgelöst wird. Danke aber.

Lachtaube

Verweise können in einer ACCDE oder MDE nicht aktualisert werden - auch wenn Du das Gegenteil behauptest.  ;)
Grüße von der (⌒▽⌒)

zoulhh

Zitat von: Lachtaube am März 04, 2017, 14:29:10
Verweise können in einer ACCDE oder MDE nicht aktualisert werden - auch wenn Du das Gegenteil behauptest.  ;)

Hab ich nicht behauptet. Ich habe lediglich gesagt, dass sich kurz ein Infofenster öffnet indem Access darauf hinweist, dass er MSOUTL.OLB sucht (und dann findet). Danke abermals.

LGM

zoulhh

Ich habe das Problem jetzt so gelöst, dass ich nicht mehr "=meinefunktion()" in die diversen Ereignisse schreibe, sondern für jedes Ereignis ein Sub aufrufen lassen. Auch, wenn in jeder Sub das Gleiche drin steht, was nervig und unübersichtlich ist. Weiß mir nicht anders zu helfen. Danke für jeden Beitrag.

LGM