Ich benutze LibreOffice Calc seit mehr als 3 Jahren, habe aber kürzlich begonnen, Makros mit Basic zu implementieren. Ich habe auf Online-Ressourcen verwiesen, die für Libreoffice Calc Macro relevant sind, und ich versuche, einen absoluten Dateipfad in einer bestimmten Zelle zu ermitteln.
Es folgt der Code, den ich ausführen möchte, wodurch ich einen Fehler erleide:
Error:
BASIC Laufzeitfehler.
Eigenschaft oder Methode nicht gefunden: setValue.
Code
Sub selectFile
Dim FileNames() as String
Dim Doc as Object
Dim oSheet as Object
Dim oDestCell as Object
FileNames = fImportLocalFile()
Doc = ThisComponent
oSheet = Doc.Sheets(0)
oDestCell = oSheet.getCellByPosition(1,1)
oSheet.setValue(FileNames, False)
Msgbox Join(FileNames, Chr(10))
End Sub
Möglicherweise fehlen einige Import- / Include-Dateien, die zu diesem Fehler führen. Relevante Ressource online nicht gefunden und daher meine Frage hier posten.
Vielen Dank für Hinweise im Voraus.
StackOverflow
nächste Mal für diese Art von Fragen zu verwenden, da dies angemessener erscheint.SU
= Fragen des Benutzers,SO
= "Q & A für professionelle und begeisterte Programmierer"Antworten:
Für die Programmierung von LibreOffice / Apache OpenOffice erhalten Sie die Extension
MRI
!Ebenso die Dokumentation (zu finden in den
SDK
Installationspaketen).Folgendes
MRI
wurde für Ihr Ziel aufgezeichnet:Erklärung :
sheet.setValue
- Wie in der Fehlermeldung angegeben: Es gibt keine solche Eigenschaft.cell.Value
- Fehler, da.setValue
setzt einDOUBLE
, kein String.cell.Text
- Fehler, da dasText
Objekt einer Zelle einenCellTextCursor
(der Formatierungsanweisungen enthält) und einenString
(der die Textzeichen enthält) benötigt.Als Erstes erhalten Sie Andrew Pitonyaks Makrodokument , als kostenloses Dokument - oder kaufen Sie sein Buch.
[Ich bin nicht mit dem Autor oder dem Verfahren seines Buches verbunden]
quelle