Метод или свойство setValue не найдены при реализации макроса LibreOffice Calc
Я использую LibreOffice Calc уже более 3 лет, но недавно начал внедрять макросы с использованием Basic. Я ссылался на онлайн-ресурсы, относящиеся к Libreoffice Calc Macro, и я пытаюсь получить абсолютный путь к файлу в определенной ячейке.
Ниже приведен код, который я пытаюсь запустить, который выдает мне ошибку:
Ошибка:
ОСНОВНАЯ ошибка во время выполнения.
Свойство или метод не найдены: setValue.
Код
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
Я могу пропустить импорт / включение, что приводит к этой ошибке. Невозможно найти соответствующий ресурс в Интернете и, следовательно, разместить мой вопрос здесь.
Спасибо за любые указатели заранее.
1 ответ
Для программирования LibreOffice/Apache OpenOffice получите Расширение MRI
!
А также документацию (можно найти в SDK
установочные пакеты).
Это то, что MRI
записано для вашей цели:
Sub Snippet
Dim oSheets As Variant
Dim oObj1 As Variant
Dim oCellByPosition As Variant
oSheets = ThisComponent.getSheets()
oObj1 = oSheets.getByName("Tabelle1")
oCellByPosition = oObj1.getCellByPosition(1, 1)
oCellByPosition.setString("whatever")
End Sub
Пояснение:
sheet.setValue
- как указано в сообщении об ошибке: такого свойства нет. cell.Value
- ошибка, как .setValue
устанавливает DOUBLE
, а не строка. cell.Text
- ошибка, как ячейка Text
объект нуждается в CellTextCursor
(который содержит инструкции по форматированию) и String
(удерживая текстовые символы).
Для начала получите Макро-документ Эндрю Питоняка, как бесплатный документ - или купите его книгу.
[Я не связан с автором или слушаниями его книги]