Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1920to1924
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Methode wird nicht mehr ausgeführt.

Methode wird nicht mehr ausgeführt.
02.03.2023 23:50:14
Marc
Hallo zusammen,
ich bin am verzweifeln weil ich mittlerweile das 3. oder 4. Mal das gleiche (oder fast gleiche) Makro geschrieben habe, immer mit dem Ergebnis, dass es irgendwann nicht mehr funktioniert und ich kann mir nicht erklären weshalb. Ich hatte den Code bereits in folgendem Beitrag gepostet:
https://www.herber.de/forum/cgi-bin/callthread.pl?index=1922230
Nachdem ich festgestellt hatte, dass eine Variable doppelt deklariert war hatte ich den Fehler behoben und es lief zunächst. Einige Zeit später wurde die Methode "reqFundamentalData" dann einfach nicht mehr ausgeführt. Ich habe den Eindruck es fängt immer dann an zu spinnen wenn ich Daten aus einem der älteren Workbooks (die nicht mehr funktionieren) rüberkopiere.
Vielleicht hat es auch mit meinen Surface Pro zu tun. Es ist wie verhext, denn am Code habe ich nichts geändert aber die Methode wird einfach nicht mehr aufgerufen. Die Klasse wird seltsamerweise initialisiert und die Connect-Methode klappt auch, nur reqFundamentalData will sich nicht mehr ausführen lassen.
Jemand eine Idee woran so etwas liegen kann?
VG
Marc

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Methode wird nicht mehr ausgeführt.
03.03.2023 01:04:39
ralf_b
ich kann mich ja täuschen aber deine Methode hat 3 Parameter und wird mit nur 2 Parametern aufgerufen. Im Grunde sollte das auch nicht funktionieren. Da keiner der Parameter optional ist, müssen immer 3 Parameter übergeben werden.
AW: Methode wird nicht mehr ausgeführt.
03.03.2023 08:21:37
Marc
Hi Ralf,
vielen Dank aber Du irrst Dich in der Tat. Du schaust auf das Klassenmodul in die Prozedur in der man die Response erhält. Diese liefert reqID und data.
Der dazugehörige Call ist im Standardmodul untergebracht und mit diesem übergebe ich drei Parameter.
VG
Marc
AW: Methode wird nicht mehr ausgeführt.
03.03.2023 11:31:24
Luschi
Hallo Marc,
von welchem Methodenaufruf spricht Du denn:
- Call ObjTWSControl.m_TWSControl.reqFundamentalData(id, ObjTWSControl.m_contractInfo, fs)
- die Methode 'reqFundamentalData' gibt es im gezeigten Klassenmodul nicht
- dort gibt es nur diese: 'm_TWSControl_fundamentalData', die aber nicht aufgerufen wird und auch
  nur 2 Parameter erwartet
Da selbst programmierte Klassenmodule sehr sensibel sind, nehmen sie jede geringste Störung furchtbar erst und beenden einfach die unvollendete Arbeit ohne Fehlermeldung.
Außerdem sollte man aus dem Klassenmodul mit 1 Class_Terminate()-Event aussteigen, um die Objektvariablen sauber ins Jenseits zu schicken.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Methode wird nicht mehr ausgeführt.
03.03.2023 13:49:17
Marc
Hi Luschi,
ich hab den Sachverhalt mal wieder grottig beschrieben. Schande über mein Haupt. =)
Also, reqFundamentalData ist eine Methode von m_TwsControl (Tbs.Library) und die Prozedur im Klassenmodul ist der Callback bzw. die Antwort.
(Die Library bekommt man bei Interactive Brokers und die ist in den Verweisen auch aktiviert.)
Es gibt übrigens auch einen Error-Handler, allerdings spinnt der seit dem letzten Update und deshalb habe ich den auskommentiert. Es ist übrigens wie Du beschreibst. Man erhält keinerlei Hinweise auf irgendeinen Fehler. Die Sub wird auch nicht angehalten und hängt sich auch nicht auf. Die Prozedur steht einfach still wenn man so will, ohne dass irgendetwas passieren würde, bis man sie dann manuell stoppt.
Ich kann nur sagen, dass der gleiche Codeaufbau in einem anderen Makro seit Jahren zuverlässig funktioniert. Ich vermute, dass ich unbeabsichtigt irgendetwas im Hintergrund deaktiviere oder dass ich etwas falsch mache im Umgang mit öffentlichen Variablen.
Das mit dem Aussteigen werde ich versuchen. Momentan ist es z.B. so, dass ich nach jedem Fehler eine neue ID verwenden muss, weil ich nicht weiß wie ich verwendete ID´s wieder zurücksetzen kann. Alles in allem ist mir diese API nach wie vor ein Rätsel.

Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige