Есть возможность установить пробел разделителем групп разрядов числа.
А есть ли возможность установить:
1. разделитель групп разрядов из ОС?
2. свой разделитель групп разрядов? Можно создать свой формат, конечно, например, #'###,00;[RED]-#'###,00, но тогда апостроф, который мне нужен разделителем групп разрядов, становится перед всеми числами, например, '12,34.
И вопрос из любопытства:
3. Что за числовой формат # ##0,00, и чем он отличается от # ###,00?
Apache OpenOffice 4.1.3 на W10/64.
1. Нет
2. Нет
Обоснование: разделитель разрядов - не пробел, а символ, установленный разделителем разрядов в Офисе для языка, выбранного для ячейки. Язык может быть установлен автоматически (по настройкам ОС), но символы будут вся равно взяты из ЛО для этого языка.
3. Будет ли показан ноль перед запятой.
1,2. Жаль. Нет в мире совершенства. Только было собрался переходить на ОО, а тут такое препятствие. Придётся возвращаться к 2013.
3. Если это был вопрос, то ответ: нет, никаких нулей вместо цифры перед зпт, что ожидаемо. Загадочный формат.
3- Нет, это был не вопрос. Это был ответ. Разница между форматами в том, будет ли показан ноль перед десятичным разделителем. Не "будет ли заменена цифра на ноль", а "если число между 1 и 0, показывать ли ноль перед запятой."
Ноль в коде означает - обязательно писать цифру в этом месте. Решётка означает "ставить число только если оно значимо (т.е., оно не ноль, либо есть старшие значимые разряды)".
Первый вариант для 0,018 даст 0,02, а второй - ,02.
3. Понятно, спасибо.
concept.ru - если нужно позарез форматировать вывод чисел "как в 1С", типа 123'456,00 или 123,456.00 - можно написать на StarBasic функцию. Но вообще пробел как разделитель триад - абсолютно прекрасненько смотрится.
Если нужно форматировать именно так, то не нужно придумывать макросы, лучше выбрать для ячеек локаль с соответствующими разделителями.
Цитата: mikekaganski от 17 апреля 2017, 05:39Язык может быть установлен автоматически (по настройкам ОС), но символы будут вся равно взяты из ЛО для этого языка.
А можно как-то редактировать ЛО языка? Эти настройки наверняка в каких-то файлах хранятся?
Цитата: Billy Bons от 17 апреля 2017, 13:02
Цитата: mikekaganski от 17 апреля 2017, 05:39Язык может быть установлен автоматически (по настройкам ОС), но символы будут вся равно взяты из ЛО для этого языка.
А можно как-то редактировать ЛО языка? Эти настройки наверняка в каких-то файлах хранятся?
Виноват, написал неясно, да ещё и вне контекста. Я писал про LibreOffice (ЛО), хотя вопрос был про ОО. Но суть от этого не меняется.
Это компилируется в бинарный код. В ЛО, например, это находится в исходном файле i18npool/source/localedata/data/ru_RU.xml, который преобразуется в промежуточный компилируемый код workdir/CustomTarget/i18npool/localedata/localedata_ru_RU.cxx. Так что, конечно, изменить можно, но только перекомпиляцией или HEX-редактором :)
Цитата: mikekaganski от 17 апреля 2017, 11:21Виноват, написал неясно, да ещё и вне контекста. Я писал про LibreOffice (ЛО), хотя вопрос был про ОО. Но суть от этого не меняется.
Забавно, я воспринял ЛО, как своеобразное сокращение слова "локаль". :)
Цитата: mikekaganski от 17 апреля 2017, 11:21Это компилируется в бинарный код. В ЛО, например, это находится в исходных файлах workdir/CustomTarget/i18npool/localedata/localedata_ru_RU.cxx. Так что, конечно, изменить можно, но только перекомпиляцией или HEX-редактором
Печально. :( Вообще, конечно, странноватое решение - жестко забивать настройки в исполняемый код.
Спасибо за ответ!
Не, не странное. Это не настройки, а данные о известных языках.
Другое дело, что было бы здорово, если бы была настройка использования системных параметров для языка "по умолчанию" (т.е. системного). Например, для десятичного разделителя такая настройка есть (см. в языковых настройках). Так что предложения по улучшению в багзиллу приветствуются :)
economist,
Цитата: economist от 17 апреля 2017, 10:46можно написать на StarBasic функцию
– после макроса видно будет то, что нужно. Но число станет текстом, ха-ха-ха.
Цитата: economist от 17 апреля 2017, 10:46пробел как разделитель триад - абсолютно прекрасненко смотрится
– только нужно уметь объяснить желающему, что его желание неправильное. Мол, не выпендривайся, будь, как все, не требуй сделать то, чего я по каким-либо причинам делать не хочу.
Оффтоп: постоянно сталкиваюсь с подобным. И не важно, кто это, программист, которому неудобно прикручивать возможность, или строитель, которому лень включать голову. Причём дело не в деньгах. Интересно, это свойство русского менталитета или общемировое.
mikekaganski, что такое
Цитата: mikekaganski от 17 апреля 2017, 10:51локаль с соответствующими разделителями
Например, Dutch имеет разделитель разрядов . (точка), а десятичный - , (запятая); English - наоборот , и .; French (Switzerland) - ' и .; Georgian - пробел и .
Так что для некоторых сочетаний достаточно для ячеек или их стилей (предпочтительно) выбрать соответствующий язык на вкладке числовых форматов.
Цитата: mikekaganski от 17 апреля 2017, 11:35Не, не странное. Это не настройки, а данные о известных языках.
Другое дело, что было бы здорово, если бы была настройка использования системных параметров для языка "по умолчанию" (т.е. системного).
Действительно, это было бы логично. Тем более, что системные настройки как раз можно редактировать.
Или, если уж OO и LO используют собственные настройки, то логично было бы дать пользователю их менять.
Цитата: mikekaganski от 17 апреля 2017, 11:35Например, для десятичного разделителя такая настройка есть (см. в языковых настройках).
Есть-то она есть, но не работает. :( У меня в настройках системы разделитель сделан точкой. Но LO всё равно тащит запятую, независимо от настройки.
concept.ru - число с произвольными разделителями после макроса/UDF - да, станет текстом, то бишь "шашечками". А если надо ехать/считать - то лучше довольствоваться национальным русским стандартом и типографикой, где разделители триад - пробельные, и лишь как отдельный вариант - с '.
Насчет русского менталитета, небольшой кейс из Италии, равно применимый к Швейцарии, Австрии и Германии. В крупных фирмах (Siemens, Cоncast, STG итд) - ни на одном офисном компьютере нельзя набрать текст "с чистого листа", не на основе какого-либо шаблона. Физически.
Ctrl+N - и получаем диалог выбора шаблонов.
Желающим работать в этих компаниях в первые 15 минут работы сразу объясняют, что это правильно и да, "...не выпендривайся, будь, как все...". Поэтому все письма от этих компаний единообразны, с одинаковыми разделителями триад, шрифтами итп. Лучше ли это для дела? - Лучше.
Цитата: Billy Bons от 17 апреля 2017, 14:41
Цитата: mikekaganski от 17 апреля 2017, 11:35Например, для десятичного разделителя такая настройка есть (см. в языковых настройках).
Есть-то она есть, но не работает. :( У меня в настройках системы разделитель сделан точкой. Но LO всё равно тащит запятую, независимо от настройки.
А это я неправильно написал. Она влияет на символ, который вводится с клавиатуры при нажатии на точку в области числового блока. Если не работает, пишите багрепорт.
mikekaganski, спасибо.
Цитата: Billy Bons от 17 апреля 2017, 12:41LO всё равно тащит запятую
ОО тоже самое: запятая или смерть! Смешно, что в Параметрах птица ставится в поле «
Из настроек ОС (,)», как будто все ОС русских версий имеют только запятую разделителем.
Цитата: economist от 17 апреля 2017, 13:34национальным русским стандартом
поделитесь ссылкой на стандарт, пожалуйста.
Вы подмениваете заказчика и сотрудника. Если крупной фирме Сименс заказать пяток Сапсанов с просьбой переписки каким-нибудь церковнославянским шрифтом, вроде Hirmos Caps Ucs, по Ctrl+N будет появляться и такая форма.
Цитата: mikekaganski от 17 апреля 2017, 13:39А это я неправильно написал. Она влияет на символ, который вводится с клавиатуры при нажатии на точку в области числового блока. Если не работает, пишите багрепорт.
А, всё, понял, как это работает. Спасибо!
Оно работает.