Формат ячеек - Код формата

Автор nsashan, 1 октября 2015, 09:35

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

nsashan

Добрый день!
Написал в коде формата следующее # #" "[$руб], ##" коп." что позволяет отображать суммы в виде "2 100 руб, 38 коп"
Однако, после закрытия код меняется на "# #00,00" "[$руб]" коп."" и показывает в ячейке "2 100,38 руб коп"

Это баг или фича?
Или может я неправильно написал код формата?
Спасибо)


rami

Цитата: nsashan от  1 октября 2015, 07:35Написал в коде формата следующее # #" "[$руб], ##" коп." что позволяет отображать суммы в виде "2 100 руб, 38 коп"
Однако, после закрытия код меняется на "# #00,00" "[$руб]" коп."" и показывает в ячейке "2 100,38 руб коп"

Это баг или фича?
Не думаю, что бага, такое поведение и на LibreOffice, и на Apache OpenOffice.
Цитата: nsashan от  1 октября 2015, 07:35Или может я неправильно написал код формата?
По мнению офиса, неправильно, поэтому он пытается исправить на "правильно". Но не понятно, почему до закрытия документа он "молча соглашается" с таким форматом, а после открытия "качает права" ???

nsashan

Цитата: rami от  1 октября 2015, 10:50По мнению офиса, неправильно, поэтому он пытается исправить на "правильно"
Таки да, на апаче опенофис тоже самое. Однако же, когда формат описан, справа в прямоугольнике отображается желаемое значение. Да и в самой таблице.
Если не ошибка, тогда как написать-то?)

И совсем уж непонятно. Почему нельзя скрыть разделитель (,) между целой и дробной частью? Тоже не дело, нужно написать в багтрекер.

kompilainenn

зачем скрывать разделитель целой и дробной части? О_о если нету запятой, то с чего бы я должен думать, что последние две цифры  - это копейки (ну просто для примера)?
Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут

rami

Цитата: kompilainenn от  1 октября 2015, 12:43зачем скрывать разделитель целой и дробной части?
Скрывать разделитель нет смысла, но назначить пользовательский разделитель только для текущего формата, было бы шикарно... :roll: (превратить запятую в руб, а в конце добавить коп)

nsashan

Цитата: rami от  1 октября 2015, 12:49зачем скрывать разделитель целой и дробной части? О_о если нету запятой, то с чего бы я должен думать, что последние две цифры  - это копейки (ну просто для примера)?
Возможно смысла и нет, но возможности тоже нет, а это не есть хорошо.

Цитата: rami от  1 октября 2015, 12:49Скрывать разделитель нет смысла, но назначить пользовательский разделитель только для текущего формата, было бы шикарно... Да уж... (превратить запятую в руб, а в конце добавить коп)
Согласен.

Так как написать-то правильно? Или всё-таки баг?

kompilainenn

Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут

nsashan

Цитата: kompilainenn от  2 октября 2015, 07:40хотелка
хотелка моя заключается в том чтобы сохранялся код формата, но опен так не хочет.

Цитата: nsashan от  1 октября 2015, 07:35Написал в коде формата следующее # #" "[$руб], ##" коп." что позволяет отображать суммы в виде "2 100 руб, 38 коп"
Однако, после закрытия код меняется на "# #00,00" "[$руб]" коп."" и показывает в ячейке "2 100,38 руб коп"

kompilainenn

дык хотелка же, а не бага, а хотелки реализуются кодом, который пишет хотельщик =(
Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут

JohnSUN

А ещё чуть подробнее о хотелках... Это вот отображение нужно только для вывода на печать? Или вот просто так приспичило форматировать реальные данные? (Под "реальными данными" подразумеваются числа, которые участвуют в каких-то формулах и/или подлежат ручной корректировке)
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

kompilainenn

Цитата: JohnSUN от  2 октября 2015, 09:02Или вот просто так приспичило форматировать реальные данные?
this
Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут

nsashan

Цитата: JohnSUN от  2 октября 2015, 09:02Это вот отображение нужно только для вывода на печать
В дальнейшем эти цифры будут выведены на печать.

nsashan

Цитата: kompilainenn от  2 октября 2015, 09:02дык хотелка же, а не бага
ну ок, если не бага, тогда почему не сохраняется код формата?
можно, конечно и написать скрипт для присвоения ячейкам необходимого кода формата и применять скрипт перед каждым использованием файла.
Только это - костыли.

JohnSUN

Верно, это костыли...
Если речь идёт о выводе на печать значений в каком-то необычном формате, то стоит подумать о подготовке отдельного листа - печатной формы - именно для вывода на печать. Этот лист будет содержать неизменяемые формулы, которые и отформатируют данные с реальных расчетных листов в нужном виде. Если уж не получается использовать встроенные маски форматов, в запасе всегда есть набор функций, которые позволят получить нужный результат. Например, что-нибудь вида
=TEXT(INT(B7);"# ##0")&" руб "&TEXT((B7-INT(B7))*100;"00")&" коп"
выведет на печать что-то очень похожее на искомый результат (для отрицательных значений не проверял, скучно)
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

nsashan

Цитата: JohnSUN от  2 октября 2015, 09:34Если речь идёт о выводе на печать значений в каком-то необычном формате, то стоит подумать о подготовке отдельного листа - печатной формы
Буду использовать для печати форм функцию "рассылка писем", правда полей слияния будет намного больше из-за принудительного разделения на разные ячейки.
Спасибо вам.