В LO версии 5.4.1.2 перестал работать макрос.

Автор Irina18, 6 октября 2017, 18:24

0 Пользователи и 1 гость просматривают эту тему.

Irina18

Вот тут http://forumooo.ru/index.php/topic,1660.45.html нашла макрос для вставки даты  в ячейку в момент вывода документа на печать. В ранних версиях LO вроде все работало. Обновилась до последней версии LO 5.4.1.2 именно этот макрос перестал работать. Специалисты посмотрите в чем проблема. Код у меня следующий: Sub setDateOfFirstPrint  'Дата при печати
Dim oCell As Variant
oCell = ThisComponent.Sheets(0).getCellByposition(9,1)
If Trim(oCell.getString())="" Then oCell.setValue(Now)
End Sub
Файл во вложении. Всем отклинувшимся спасибо.

mikekaganski

У меня работает в 5.4.2.2 - только у ячейки неправильный формат: не дата, а числовой, поэтому выводится десятичное число с дробной частью (внутренний формат хранения даты и времени в ЛО).

Если проблема в этом, просто выставьте нужный формат ячейке.
С уважением,
Михаил Каганский

Irina18

Да формат именно в этом файле я забыла поменять, сейчас исправила, но нажимаю файл, просмотр печати в ячейки нет никаких данных. Что я не так делаю?

Yakov

#3
Проблема с безопасностью макросов После обновления LO не признаёт, что макрос был создан на этом компьютере.
Необходимо поменять уровень безопасности макросов на средний или низкий.

Сервис -> Параметры -> LibreOffice -> Безопасность -> Безопасность макросов
и поставить уровень безопасности средний или низкий.
Затем переоткрыть электронную таблицу.

Irina18

Да нет, проблема не безопасности макросов. У меня стоял средний уровень, сейчас поставила низкий, попробовала разницы нет. Представленный мной файл это кусочек из основного файла. В основном файле все макросы работают кроме того, что представлен на обсуждение.

rami

Irina18 проверьте привязку макроса к событию (Сервис —> Настройка —> События). Хотя в выложенном документе она есть.

Irina18


rami

Поставьте более исправленную 5.4.2.2, хуже не будет. Какая у вас ось?

Irina18

Качаю последнюю версию, установлю и посмотрим, что будет. Windows стоит 10.

mikekaganski

Странно. Попробовал с 5.4.1.2 - тоже работает...
С уважением,
Михаил Каганский

rami

А в основном документе эту дату должно писать на первый лист или на другой?

Цитата: mikekaganski от  6 октября 2017, 19:27
Странно. Попробовал с 5.4.1.2 - тоже работает...
Я пробовал на Dev 5.4.0.0 бета тоже работает, значит проблема не в офисе.

Irina18

Поставила версию 5.4.2.2 и всё заработало. Всем спасибо.

economist

Не может быть такого. Сам макрос - рабочий.
А вот событие печати, к которому был "привязан" макрос - может отслеживаться
не на том уровне (не на уровне документа, а на уровне приложения).  
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...