Python календарь - вызов по кнопке

Автор oleg, 21 июля 2014, 08:32

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

oleg

Добрый день.
Сильно не ругайте, если вопросы глупые.  С Libre работаю всего недавно.
Есть Python календарь, он вызывается  "Ctrl Shift F2".
Вопрос:
1. Можно ли вызов календаря сделать через кнопку на листе.
2. Возвращал бы дату в определенную ячейку и закрывался.
ubuntu 14.04 + LO 4.2.4

rami

Цитата: oleg от 21 июля 2014, 07:32Есть Python календарь, он вызывается  "Ctrl Shift F2".
У меня pycalendar не работает.
Цитата: oleg от 21 июля 2014, 07:321. Можно ли вызов календаря сделать через кнопку на листе.
2. Возвращал бы дату в определенную ячейку и закрывался.
Можно. Мой календарь вызывается двойным кликом в любом табличном формате (проверено .xls и .csv). См. видео.

oleg

ubuntu 14.04 + LO 4.2.4

rami

#3
Цитата: oleg от 21 июля 2014, 08:57Поделится можешь?
А для чего же я тогда пишу? Подразнить?
Нужно установить расширение Calendar.oxt (моё) как обычно, потом в панели инструментов сделать кнопку включения/выключения календаря(можно не делать, но тогда он будет выскакивать на двойной клик всегда). В контейнере библиотек "Мои макросы" в в библиотеке Calendar (которая появится после установки расширения) найти строки кода :  'диапазон действия "двойного клика",  'смещение календаря по горизонтали, 'смещение календаря по вертикали, 'форматирует дату в ячейке и задать нужные вам значения. Если будут нужны дополнения или изменения пишите.

Уточню: кнопку вкл./выкл. на панели инструментов нужно назначить макросу EventCal. По умолчанию календарь всегда выключен, его надо включать на каждом листе где он нужен(одно нажатие включает, а другое выключает)

Хорошая иконка для кнопки на панели инструментов "календ.png"

oleg

У меня в MS Office сделано следующее:
есть ячейка, в которую должны ввести дату. Рядом кнопка с вызовом календаря, для каждой ячейки своя кнопка (что бы пользователи не тупили).
Как сделать что бы на кнопку повесить сразу вызов календаря, без дополнительной формы ("Cal"). и возвращал значение в ячейку которую пропишешь.
На VBA знаю как делать, с синтаксисом Libre не до конца разобрался.
ubuntu 14.04 + LO 4.2.4

Hasim

Цитата: oleg от 21 июля 2014, 11:59есть ячейка, в которую должны ввести дату. Рядом кнопка с вызовом календаря, для каждой ячейки своя кнопка (что бы пользователи не тупили)
А вместо нудного описания просто файл показать нельзя?

rami

Hasim, пример был в предыдущей теме
Цитата: oleg от 17 июля 2014, 11:16Пример во вложении. Только пример вызова данного календаря.
Не сказал самого главного, операционка не Windows a Ubunta.
Сейчас плановый переход от Windows на Linux, поэтому файл должен работать в обоих системах.
И камнем предкновения стал этот самый календарь.
Побывали в ручную заполнять поля- получается фигня, пользователи все равно глючат. То в месяце 31 день вместо 30, то формат меняют местами и т.д.
 Пример календаря.xls (50 Кб - загружено 2 раз.)
oleg, за перерасход кнопок будете писать объяснительную 8-) См. видео, кроме того в макросах что то не так(мне кажется)

Hasim

Цитата: rami от 21 июля 2014, 13:29пример был в предыдущей теме
Цитата: rami от 21 июля 2014, 13:29Пример во вложении. Только пример вызова данного календаря. Не сказал самого главного, операционка не Windows a Ubunta.
Цитата: oleg от 21 июля 2014, 11:59У меня в MS Office сделано следующее:
есть ячейка, в которую должны ввести дату. Рядом
Откуда в Ubuntu MS Office?

oleg

Как было сказана в предыдущей теме.
Есть файл с функционалом, в данном случае вызов календаря по кнопке и запись значения в ячейку, все остальное победил.
На момент перехода  на линукс данный файл  будет использоваться как под Windows так и под Linux.
Вот собственно и проблема в том,  что надо  сначала с файлом поработают (внесут данные)  под linux, затем его обработают под Windows и отправят обратно. все делают разные люди. Обработку под Windows переносить сразу на Libre нет возможности, там столько наворочено во внешних обработках (Excel).
ubuntu 14.04 + LO 4.2.4

shaxter

Уважаемые, подскажите, что нужно изменить в макросе Calendar.oxt чтобы формат даты был д.м.г.(01.12.15)?

rami

Цитата: shaxter от  6 декабря 2015, 19:12Уважаемые, подскажите, что нужно изменить в макросе Calendar.oxt чтобы формат даты был д.м.г.(01.12.15)?
Попробуйте в макросе Main в строке oCell.NumberFormat=38    'форматирует дату в ячейке заменить 38 на 37

shaxter