Verweis im DDE-Befehl möglich?
Moderator: Moderatoren
Verweis im DDE-Befehl möglich?
Hallo zusammen,
ich bastel gerade an einer Datei, die Kurdaten aus dem Programm MetaTrader per DDE ausliest. Der verwendete Befehl lautet:
=DDE("MT4";"ASK";"Ger30Sep10";1).
Kann ich den Ausdruck "Ger30Sep10" auch aus einem anderen Feld in der Tabelle ziehen. Er ändert sich regelmäßig, aber ich möchte die Formel nicht bearbeitbar lassen.
Wenn ich die ooowiki richtig verstanden habe, würde man das in write per Feldbefehl lösen, aber in Calc gibt es den wohl nicht.
Wer hat einen Tip?
Gruß
snoopy
ich bastel gerade an einer Datei, die Kurdaten aus dem Programm MetaTrader per DDE ausliest. Der verwendete Befehl lautet:
=DDE("MT4";"ASK";"Ger30Sep10";1).
Kann ich den Ausdruck "Ger30Sep10" auch aus einem anderen Feld in der Tabelle ziehen. Er ändert sich regelmäßig, aber ich möchte die Formel nicht bearbeitbar lassen.
Wenn ich die ooowiki richtig verstanden habe, würde man das in write per Feldbefehl lösen, aber in Calc gibt es den wohl nicht.
Wer hat einen Tip?
Gruß
snoopy
Re: Verweis im DDE-Befehl möglich?
Hallo
Wieso probierst du diese Banalität nicht einfach ?
Gruß Karo
Ja!Kann ich den Ausdruck "Ger30Sep10" auch aus einem anderen Feld in der Tabelle ziehen.
Wieso probierst du diese Banalität nicht einfach ?
Gruß Karo
LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
Re: Verweis im DDE-Befehl möglich?
Ich beschäftige mich erst seid kurzem mit OO und mit z.B. =A23 oder "Tabelle1.A23" geht es nicht.
Wäre schön, wenn du mir diese Banalität innerhalb einer DDE-Funktion erklärst. Danke!
Gruß
snoopy
Wäre schön, wenn du mir diese Banalität innerhalb einer DDE-Funktion erklärst. Danke!
Gruß
snoopy
Re: Verweis im DDE-Befehl möglich?
Hallo
Was steht denn in A23 ?
"Ger30Sep10"
oder
Ger30Sep10
Versuchs mal mit der 2. Variante
in der Formel dann A23 bzw. Tabelle1.A23
Karo
Was steht denn in A23 ?
"Ger30Sep10"
oder
Ger30Sep10
Versuchs mal mit der 2. Variante
in der Formel dann A23 bzw. Tabelle1.A23
Karo
LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
Re: Verweis im DDE-Befehl möglich?
Hallo Karo.
Nö nö! So einfach ist das wiederum auch nicht. Wenn Du mal in diesem Thread reinschaust, dann verstehst Du entweder mehr, oder aber noch weniger. Ich jedenfalls habe momentan keinen durchblick
.
Gruß
balu
Nö nö! So einfach ist das wiederum auch nicht. Wenn Du mal in diesem Thread reinschaust, dann verstehst Du entweder mehr, oder aber noch weniger. Ich jedenfalls habe momentan keinen durchblick

Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.
wehr rächtschraipfähler findet khan si behalden
wehr rächtschraipfähler findet khan si behalden

Re: Verweis im DDE-Befehl möglich?
Hallo
@Balu
Meine Antwort bezieht sich auf die Fragestellung hier dieses Threads, es geht schlicht um den Austausch eines Textarguments gegen die Zelladresse die dieses Argument enthält.
Meines Wissens nach ist dieser Tausch bei DDE problemlos möglich, Snoopy erwähnt hier auch nicht das die Formel mit direkter Übergabe des Textarguments nicht funktioniert !
Gruß Karo
@Balu
Meine Antwort bezieht sich auf die Fragestellung hier dieses Threads, es geht schlicht um den Austausch eines Textarguments gegen die Zelladresse die dieses Argument enthält.
Meines Wissens nach ist dieser Tausch bei DDE problemlos möglich, Snoopy erwähnt hier auch nicht das die Formel mit direkter Übergabe des Textarguments nicht funktioniert !
Gruß Karo
LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
Re: Verweis im DDE-Befehl möglich?
Hallo Karo,
Da ich das aber nicht raffe, ziehe ich mich lieber ganz klamm-heimlich wieder zurück. Ich war also nicht hier
.
Gruß
balu
Und das ist der Punkt den ich nicht so recht versteh. Denn es ist ja eigentlich kein Textargument, sondern ein Datenfeld.es geht schlicht um den Austausch eines Textarguments gegen die Zelladresse die dieses Argument enthält.
Da ich das aber nicht raffe, ziehe ich mich lieber ganz klamm-heimlich wieder zurück. Ich war also nicht hier

Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.
wehr rächtschraipfähler findet khan si behalden
wehr rächtschraipfähler findet khan si behalden

Re: Verweis im DDE-Befehl möglich?
Hallo
Gruß Karo
Solange Snoopy nichts anderes behauptet interpretiere ich "aus einem anderen Feld" als normale Zelladresse.Kann ich den Ausdruck "Ger30Sep10" auch aus einem anderen Feld in der Tabelle ziehen.
Gruß Karo
LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
Re: Verweis im DDE-Befehl möglich?
Hallo Karo, hallo balu,
danke, dass ihr Euch mit meinem Problem beschäftigt. Vielleicht noch einige Informationen, um das Problem zu erläutern.
Mit dem Befehl =DDE("MT4";"ASK";"Ger30Sep10";1) ziehe ich Kursdaten aus einer Handelsplattform (MetaTrader4). D.h. es wird der aktuelle Kurs des DAX in Calc angezeigt und für weitere Berechnungen verwendet.
Nun ändert sich alle3 Monate die Bezeichnung des Kontrakts. Ab Sep heißt er dann Ger30Dez10.
Da die Datei auch von anderen verwendet wird, will ich die Änderungen so einfach wie möglich machen, so dass eben nur diese Bezeichnung geändert werden soll.
Das allgemeine Format für den DDE-Befehl lautet DDE (Server; Datei; Bereich; Modus). Mit MT4 muss das so aussehen:
Server = MT4 , da wird das Programm angegeben und netterweise auch egal, wo es installiert ist scheint Calc einen laufenden MT4 zu erkennen.
Datei = ASK, das ist im MT4 eigentlich ein Datenfeld für die Kaufkurse. Es gibt im MT4-Verzeichnis keine Datei mit diesem Namen und da man diese Eingabe auch bei allen anderen Märkten so angeben muss und es funktioniert, gehe ich davon aus, dass der MT4 und Calc sich da schon verstehen
Bereich = Ger30Sep10, hier wird angegeben, von welchem Markt die Kursdaten gezogen werden sollen. Das kann auch EURUSD oder Gold oder Usa500 sein.
Modus = 1, zieht immer im amerikanischen Zahlenformat. Das ist der Grund, weshalb ich das mit Calc und nicht mit Excel realisiere
Meine DDE- und Calc-Kenntnisse sind jedoch begrenzt, mehr kann ich leider nicht dazu erklären. Mit den angegebenen Parametern funktioniert alles.
Es geht hier in diesem Thread darum, die Angabe für den Bereich von einer anderen Stelle in der Calc-Tabelle zu ziehen.
Das hab ich probiert mit
=DDE("MT4";"ASK";"Tabelle1.A23";1) wobei in A23 Ger30Sep10 steht.
Sowohlim DDE-Befehl, wie in der Zelle A23 hab ich es mti und ohne "" versucht, ich bekomme immer N/A. Ich bekomme nur Werte, wenn der Ausdruck Ger30Sep10 direkt im DDE-Befehl steht. Dann läuft alles problemlos.
Wie oben ausgeführt soll dieser Ausdruck jedoch aus einer anderen Zelle kommen. Ich hoffe, das Problem ist jetzt besser nachvollziehbar und jemand hat vielelicht eine Idee, was ich noch probieren kann bzw. wo ich suchen kann. In der Dokumentation von MT4 wird leider nur die Systematik des DDE-Befehls erklärt und in den Quellen zu Calc hab ich auch nichts gefunden, wir ich diesen Bezug innerhalb einer DDE-Funktion herstellen kann.
Gruß
snoopy
danke, dass ihr Euch mit meinem Problem beschäftigt. Vielleicht noch einige Informationen, um das Problem zu erläutern.
Mit dem Befehl =DDE("MT4";"ASK";"Ger30Sep10";1) ziehe ich Kursdaten aus einer Handelsplattform (MetaTrader4). D.h. es wird der aktuelle Kurs des DAX in Calc angezeigt und für weitere Berechnungen verwendet.
Nun ändert sich alle3 Monate die Bezeichnung des Kontrakts. Ab Sep heißt er dann Ger30Dez10.
Da die Datei auch von anderen verwendet wird, will ich die Änderungen so einfach wie möglich machen, so dass eben nur diese Bezeichnung geändert werden soll.
Das allgemeine Format für den DDE-Befehl lautet DDE (Server; Datei; Bereich; Modus). Mit MT4 muss das so aussehen:
Server = MT4 , da wird das Programm angegeben und netterweise auch egal, wo es installiert ist scheint Calc einen laufenden MT4 zu erkennen.
Datei = ASK, das ist im MT4 eigentlich ein Datenfeld für die Kaufkurse. Es gibt im MT4-Verzeichnis keine Datei mit diesem Namen und da man diese Eingabe auch bei allen anderen Märkten so angeben muss und es funktioniert, gehe ich davon aus, dass der MT4 und Calc sich da schon verstehen
Bereich = Ger30Sep10, hier wird angegeben, von welchem Markt die Kursdaten gezogen werden sollen. Das kann auch EURUSD oder Gold oder Usa500 sein.
Modus = 1, zieht immer im amerikanischen Zahlenformat. Das ist der Grund, weshalb ich das mit Calc und nicht mit Excel realisiere

Meine DDE- und Calc-Kenntnisse sind jedoch begrenzt, mehr kann ich leider nicht dazu erklären. Mit den angegebenen Parametern funktioniert alles.
Es geht hier in diesem Thread darum, die Angabe für den Bereich von einer anderen Stelle in der Calc-Tabelle zu ziehen.
Das hab ich probiert mit
=DDE("MT4";"ASK";"Tabelle1.A23";1) wobei in A23 Ger30Sep10 steht.
Sowohlim DDE-Befehl, wie in der Zelle A23 hab ich es mti und ohne "" versucht, ich bekomme immer N/A. Ich bekomme nur Werte, wenn der Ausdruck Ger30Sep10 direkt im DDE-Befehl steht. Dann läuft alles problemlos.
Wie oben ausgeführt soll dieser Ausdruck jedoch aus einer anderen Zelle kommen. Ich hoffe, das Problem ist jetzt besser nachvollziehbar und jemand hat vielelicht eine Idee, was ich noch probieren kann bzw. wo ich suchen kann. In der Dokumentation von MT4 wird leider nur die Systematik des DDE-Befehls erklärt und in den Quellen zu Calc hab ich auch nichts gefunden, wir ich diesen Bezug innerhalb einer DDE-Funktion herstellen kann.
Gruß
snoopy
Re: Verweis im DDE-Befehl möglich?
Hallo
Ich kann nur wiederholen:
Wenn die Formel in der direkten Form =DDE("MT4";"ASK";"Ger30Sep10";1) funktioniert, sollte sie das auch in der Form =DDE("MT4";"ASK";Tabelle1.A23;1) tun, sofern es Tabelle1.A23 gibt und dort Ger30Sep10 ohne Anführungszeichen steht.
Gruß Karo
Ich kann nur wiederholen:
Wenn die Formel in der direkten Form =DDE("MT4";"ASK";"Ger30Sep10";1) funktioniert, sollte sie das auch in der Form =DDE("MT4";"ASK";Tabelle1.A23;1) tun, sofern es Tabelle1.A23 gibt und dort Ger30Sep10 ohne Anführungszeichen steht.
Gruß Karo
LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
Re: Verweis im DDE-Befehl möglich?
Hallo Karo,
danke für deine Antwort. Leider ist das nicht so.
Tabelle1.A23 gibt es, ist als Standard formatiert.
Wenn ich den Eintrag darin lösche, kommt die Meldung #NA, wenn ich Ger30Sep10 ohne Anführungsstriche eintrage, kommt N\A. D.h. für mich, die Verknüpfung greift auf das Feld zu, aber findet irgendwie die Daten nicht. Wenn ihr sagt, dass müsste in Calc so funktionieren, dann wird die Verknüpfung wohl von MT4 nicht erkannt, oder wie seht ihr das?
Gruß
snoopy
danke für deine Antwort. Leider ist das nicht so.
Tabelle1.A23 gibt es, ist als Standard formatiert.
Wenn ich den Eintrag darin lösche, kommt die Meldung #NA, wenn ich Ger30Sep10 ohne Anführungsstriche eintrage, kommt N\A. D.h. für mich, die Verknüpfung greift auf das Feld zu, aber findet irgendwie die Daten nicht. Wenn ihr sagt, dass müsste in Calc so funktionieren, dann wird die Verknüpfung wohl von MT4 nicht erkannt, oder wie seht ihr das?
Gruß
snoopy
Re: Verweis im DDE-Befehl möglich?
Hallo nach Österreich,
ich meine zwar, ich hätte es vorher auch getestet, aber jetzt klappt es so. Danke für den Hinweis.
Gruß
snoopy
ich meine zwar, ich hätte es vorher auch getestet, aber jetzt klappt es so. Danke für den Hinweis.
Gruß
snoopy