Einzelnen Beitrag anzeigen

Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
439 Beiträge
 
Delphi XE5 Professional
 
#1

LibreOffice-Calc: DLL --> Declare Function-Problem

  Alt 9. Jul 2021, 14:05
Hallo Community,
ich würde gerne Berechnungsfunktionen aus meinen Delphi-DLL’s nach Excel-Manier auch in einer Calc-Tabelle von LibreOffice verwenden. Ein einfaches Beispiel sieht z.B. so aus:
Code:
Declare Function Reynolds Lib "SuchPfad\ChemWingsFlow.dll"_
(ByVal w#, ByVal d#, ByVal Ny#) As Double
Und die Benutzung der Routine in der Calc-Tabelle sieht wie folgt aus:
Code:
= REYNOLDS(E6;E7;E8)
Hierbei kommt es stets zu einer Fehlermeldung:
Code:
"BASIC-Laufzeitfehler: Fehler beim Laden einer DLL-Datei."
Meine DLL verwendet stets StdCall; In Excel funktioniert es seit eh und je einwandfrei.

Leder helfen mir dabei selbst die 4 neuesten Bücher über Makro-Programmierung von LibreOfice-Großmeister Thomas Krumbein auch nicht weiter, weil er immer SUB’s mit eigenen Anzeigefenstern verwendet und keine Funktionen, die in die Zellen schreiben. Diese Frage habe ich bereits vor 9 Monaten auch im LibreOfice-Forum gestellt, https://ask.libreoffice.org/de/quest.../39953/opaque/ aber überhaupt keine Antwort bekommen.

1: Was mache ich falsch?
2: Geht es überhaupt, daß meine Routinen aus der DLL direkt in die Zelle(n) der Calc-Tabelle schreiben?
3: Kann man mit Calc eine sogenannte "Matrix-Funktion" (= ein- und mehrdimensionale Arrays) definieren und die Rückgabewerte der Funktion direkt in die Tabellenzellen schreiben?

Kennt vielleicht jemand das Problem von Euch und hat bereits eine Lösung dafür, oder weiß definitiv, daß es in LibreOfice nicht möglich ist?

Herzlichen Dank für Eure Hilfe im Voraus!

Viele Grüße
Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher.
John C. Cornelius

Geändert von Andreas13 ( 9. Jul 2021 um 14:17 Uhr)
  Mit Zitat antworten Zitat