1

В Libreoffice Calc можно использовать макросы для установки свойств текста каждой ячейки, для форматирования макета и шрифта. Мне удалось найти некоторые имена свойств онлайн, в примерах кода и на форумах.

oCell.CharHeight = 16
oCell.HoriJustify = com.sun.star.table.CellHoriJustify.CENTER
oCell.setPropertyValue("IsTextWrapped", True)
oCell.RotateAngle = 9000 ' rotate 90.00 degrees
' etc.

Тем не менее, я не могу найти код макроса для некоторых свойств, которые доступны в графическом интерфейсе (щелкните правой кнопкой мыши, Формат ячеек). В частности, я ищу код макроса для установки свойства "Отступ выравнивания текста".

Я думаю, что я нашел некоторую документацию здесь, поскольку там упоминаются .uno:AlignmentIndent и .uno:IncrementIndentValue но я понятия не имею, как использовать это в макросе. Я пытался угадать имена свойств, используя AlignmentIndent, setPropertyValue("TextAlignmentIndent", 10) и т.д., Но все мои предположения пока приводят к ошибке времени выполнения:

ОСНОВНАЯ ошибка во время выполнения. Свойство или метод не найдены: AlignmentIndent

Итак, мой вопрос:
Можно ли установить отступ выравнивания текста с помощью макроса?
Есть ли способ найти имена свойств, где я могу найти документацию для макросов Libreoffice?
Есть ли способ автоматического завершения кода при наборе текста, похожий на intellisense в VBA?

1 ответ1

1

Можно ли установить отступ выравнивания текста с помощью макроса?

Да. Вам нужно настроить com.sun.star.table.CellProperties . Свойство:

ParaIndent

Отступ содержимого ячейки (в 0,01 мм) в виде короткого целого числа.

Смотрите ниже для исходного документа.


Где я могу найти документацию для макросов Libreoffice?

На OpenOffice.org Макросы, объясненные Эндрю Питоняком [предупреждение: pdf ссылка].

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .