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