Libre Office

BASIC Laufzeitfehler; Argument ist nicht optional LO26.2 Win11

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
Marwald
Beiträge: 7
Registriert: Fr 13. Feb 2026, 18:35

BASIC Laufzeitfehler; Argument ist nicht optional LO26.2 Win11

Beitrag von Marwald » Sa 14. Feb 2026, 11:59

Moin,
in einem Formular zur Fotoarchivierung befindet sich eine Schaltfläche, die ein Makro aufruft, das das Standard-Bildbearbeitungsprogramm startet:

SUB fotoeditor(oEvent AS OBJECT)
DIM oDoc AS OBJECT
DIM oForm AS OBJECT
DIM oFeld AS OBJECT
DIM oShell AS OBJECT
DIM stUrl AS STRING
DIM stFeld AS STRING
DIM arUrl_Start()
oDoc = thisComponent
oForm = oEvent.Source.Model.Parent
oFeld = oForm.getByName("txtFoto")
stUrl = oFeld.BoundField.getString
arUrl_Start = split(oDoc.Parent.Url,right(convertToUrl(oDoc.Parent.Title),len(convertToUrl(oDoc.Parent.Title))-8))
oShell = createUnoService("com.sun.star.system.SystemShellExecute")
rem neu
stFeld = mid(convertToUrl(arUrl_Start(0) + stUrl),9)
rem schneidet file:/// ab
ende neu
oShell.execute(stFeld,,0)
rem BASIC Laufzeitfehler: Argument ist nicht optional

END SUB

Übergeben wird der Pfad zu einer Bilddatei. Das hat bisher problemlos funktioniert.
(Win 7, OpenOffice).
In Libreoffice wird auch jetzt der Fotoeditor mit dem gewünschten Bild gestartet, aber ich erhalte dann die Fehlermeldung:
BASIC-Laufzeitfehler: Argument ist nicht optional.

Bitte, was mache ich falsch. Oder ist es noch ein Bug in der Windows-Version von LibreOffice 26.2 ?

Ziemlich ratlos und für jede Hilfe dankbar
grüßt Martin

RobertG
* LO-Experte *
Beiträge: 2963
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: BASIC Laufzeitfehler; Argument ist nicht optional LO26.2 Win11

Beitrag von RobertG » Sa 14. Feb 2026, 15:14

Das ist schon vor etwas längerer Zeit gewesen, dass der Fehler hier auftauchte:
Da der letzte Parameter gesetzt ist, müssen auch die dazwischenliegenden Parameter belegt werden

Code: Alles auswählen

oShell.execute(stFeld,"",0)
Es reicht also, daraus einen leeren Text zu machen.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Marwald
Beiträge: 7
Registriert: Fr 13. Feb 2026, 18:35

Re: BASIC Laufzeitfehler; Argument ist nicht optional LO26.2 Win11

Beitrag von Marwald » Sa 14. Feb 2026, 15:24

Heißen Dank Robert,
so einfach können Lösungen sein!
Hatte inzwischen auch schon herumgebastelt und festgestellt, dass "open" als Argument funktioniert.
Ein leerer String ist natürlich eleganter.
Da wird wohl das Handbuch angepasst werden müssen, denn dort ist die von mir angewendete Schreibweise zu finden.

Ein schönes Wochenende wünscht
Martin

RobertG
* LO-Experte *
Beiträge: 2963
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: BASIC Laufzeitfehler; Argument ist nicht optional LO26.2 Win11

Beitrag von RobertG » Sa 14. Feb 2026, 17:56

Marwald hat geschrieben:
Sa 14. Feb 2026, 15:24
Da wird wohl das Handbuch angepasst werden müssen, denn dort ist die von mir angewendete Schreibweise zu finden.
Welche Version des Handbuches hast Du denn? Bei mir auf dem Desktop habe ich das drin. Vielleicht sollte ich einmal wieder eine aktuelle Version hoch laden.
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Marwald
Beiträge: 7
Registriert: Fr 13. Feb 2026, 18:35

Re: BASIC Laufzeitfehler; Argument ist nicht optional LO26.2 Win11

Beitrag von Marwald » Sa 14. Feb 2026, 18:16

Oha, war wohl eine alte Version, die nur bis Version 24.2 gültig ist.
Werde mir die neuen Handbücher besorgen :oops:

schon passiert: in Handbuch 25.08 steht es so, wie von Dir beschrieben. Danke

Open Office
Antworten