Delphi-PRAXiS
Seite 2 von 2     12

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   LibreOffice-Calc: DLL --> Declare Function-Problem (https://www.delphipraxis.net/208288-libreoffice-calc-dll-declare-function-problem.html)

Andreas13 9. Jul 2021 14:59

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Sorry, ich schäme mich wegen meines blöden Irrtums. :oops:
Inzwischen habe ich die korrekte 32-Bit-Version von LibreOffice installiert. Der einzige Unterschied im Verhalten ist nur, daß ich jetzt keine Fehlermeldung wegen der DLL mehr bekomme.
Aber die Funktion aus der DLL ist in Calc leider immer noch tot...:wall:

Aber wenigstens ist ein wichtiges Teilproblem – Dank Eurer Hilfe – beseitigt!
Ich muß weiter experimentieren.
Gruß, Andreas

hoika 9. Jul 2021 15:15

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Halo,
definiere "tot".

Andreas13 9. Jul 2021 15:33

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Hallo Heiko,

"tot" = die Funktion tut gar nichts. In der Zelle steht eine 0.
Andreas

hoika 9. Jul 2021 21:46

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Hallo,
dann los per MessageBox Debuggen.

Andreas13 10. Jul 2021 00:09

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Hallo zusammen,
jetzt funktioniert es endlich!
Der Hauptgrund war die unpassende 64-Bit-Version von LibreOffice zu meiner 32-Bit-DLL. Allerdings war der "Wurm" in meinen mit dieser 64-Bit-Version erzeugten Testdateien (* .ods) anscheinend so tief und fest abgespeichert, daß die 32-Bit-Version LibreOffice diesen nicht mehr korrigieren konnte. Deswegen habe ich alle alten Dateien gelöscht.
Nach dem Löschen aller *.ods und aller bereits existierenden Module für die Makros habe ich alles mit der 32-Bit LibreOffice-Calc neu erstellt.
Und so funktioniert alles bestens!

Vielen Dank für Eure Hilfe und wertvollen Tipps! Ihr habt mir sehr geholfen!:angel:

Viele Grüße,
Andreas

Rollo62 10. Jul 2021 11:50

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Nur mal eine Frage zwischendurch ich habe lange nichts mit LibreOffice gemacht läuft die Schnittstelle zu VBA über UNO oder mittlerweile auch direkt ?

Andreas13 10. Jul 2021 16:39

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Hallo Rollo62,
ich mache jetzt meine ersten "Gehversuche" mit dem VBA-Teil von LibreOffice, denn erst seit Mitternacht konnte ich meine erste Funktion aus der DLL laden und ausführen. Daher kann ich noch nicht sehr viel dazu sagen.
Die Schnittstelle zur DLL ist – ähnlich wie bei Excel – in einem Modul untergebracht. Das BASIC und die Bedienung inkl. Tastenkürzel sind dort im Großen und Ganzen ähnlich zu VBA. Es gibt einen Kompatibilitätsmodus und z.B. mittels
Code:
Option VBASupport 1
läßt sich die VBA-Unterstützung aktivieren. Angeblich ist dadurch eine weitgehende aber nicht vollständige Kompatibilität gewährleistet.
Noch bin ich beim Austesten & Übertragen meiner Excel-Add-In-Schnittstellen (*.XLAM) in LibreOffice, daher kann ich nichts Tieferes dazu sagen. Einfache Funktionsdeklarationen per
Code:
Declare Function ...
funktionieren aber einwandfrei. Manches muß man aber anpassen: z.B. LibreOffice - Basic erlaubt keine Umlaute im Basic-Code, VBA schon.
Mein Ziel ist hierbei, daß meine Excel-Add-In-Schnittstellen sowohl in Excel, als auch in LibreOffice funktionieren. Die eigentlichen Schnittstellen sind rein prozedural und nicht besonders komplex, denn die "Musik" in der Delphi-DLL spielt.

Gruß, Andreas

Rollo62 12. Jul 2021 07:37

AW: LibreOffice-Calc: DLL --> Declare Function-Problem
 
Hallo Andreas,

dankesehr für die Info.
Es scheint ja verschiedene Optionen zu geben, inkl. ActiveX, die dann wohl alle auf dasselbe hinauslaufen.
https://api.libreoffice.org/
(Heisst das jetzt UNO, oder ist UNO nur die Java Schnittstelle ?).

Gut das VBA anscheinend kompatibel ist.
Für mich war bei LibreOffice einer der Hauptgründe die bessere Kompatibilität, um von OpenOffice zu wechseln,
wenn das auch auf VBA zutrifft, umso besser.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:22 Uhr.
Seite 2 von 2     12

Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf