libxlsxwriter for Clarion
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1411
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Создание файлов Excel (xlsx) без использования Excel на основе проекта libxlsxwriter (https://libxlsxwriter.github.io). Можно создавать файлы, листы в них, писать данные (текст (в т.ч. русский), число, дата, время), ставить форматирование (цвет, рамки, шрифт, выравнивание, размер), объединять ячейки, фиксировать и скрывать строки и колонки, вставлять изображения, рисовать графики (диаграммы), устанавливать настройки печати и свойства документа.
Для конвертирования "картинок" форматов используется библиотека Tpicture от Taboga, у кого этого класса нет замените на что-то свое
Для конвертирования "картинок" форматов используется библиотека Tpicture от Taboga, у кого этого класса нет замените на что-то свое
- Вложения
-
- libxlsxwriter.zip
- Версия 1.5 от 30.12.2021 на основе библиотеки 1.1.4
- (276.26 КБ) 993 скачивания
Последний раз редактировалось RaFaeL 30 Декабрь 2021, 19:19, всего редактировалось 40 раз.
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
Писали, что проблема с OneDrive. Он через попу выполняет синхронизацию с облаком папки "Мои Документы" …
У меня ничего не исчезло, а вообще есть куча копий на разных компьютерах и серверах …

Make Clarion Great Again ! 
libxlsxwriter for Clarion
Действительно, какая-то мистика - неужели точка в этом формате проходит?Игорь Столяров писал(а): 09 Октябрь 2018, 9:50 ...Вариант 2 вроде бы работает … но как-то хочется понять в чём проблема.
C10, Win10x64
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
Таки да. А что в маске формата неправильно ? Или какую маску рекомендуете попробовать ? Заранее спасибо …

Make Clarion Great Again ! 
libxlsxwriter for Clarion
Точка неправильная.Игорь Столяров писал(а): 09 Октябрь 2018, 16:04..А что в маске формата неправильно ? Или какую маску рекомендуете попробовать ?..
Какой?, который допустим в Excel, например, # ##0,00
Хотя непонятен переход от # ##0.00 к 0%, что и в какой желательной форме должно выводиться?
C10, Win10x64
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
Ну не всё так просто, к сожалению … Конечно я пробовал скопипастить формат из листа Excel …
Не работает, проще попробовать, чем написать. А хотелось бы совсем малого, т.е. нормального
отображения чисел в ячейке с нулевой дробной частью при любых региональных настройках.
Например, на Руси принято вот так:
12 345.67
789.00
456 678.50
или для любителей америкосовской региональной настройки:
12 345,67
789,00
456 678,50
и т.д. Предложенная мною ранее маска этот вопрос решает.
Но как показал сегодняшний день - есть некоторые тонкие места, и я их знаю в принципе …
Вообще в XLSXWriter всё хорошо, но есть 2 слабых места:
- Работа с диапазонами выбранных ячеек (форматирование, стирание и т.д.)
- И собственно, работа с форматами ячеек …
Make Clarion Great Again ! 
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
Есть вот такая информация:
Сегодня с утра, радостно жужа HDD и ультимативно требуя перезагрузки, накатилось обещанное исправление Win10 1809.
И ничего … Т.е. описанная ранее проблема со сбоем отображения XLSX файлов c некоторыми масками чисел осталась.
И видимо придётся как-то теперь с этим жить …
Сегодня с утра, радостно жужа HDD и ультимативно требуя перезагрузки, накатилось обещанное исправление Win10 1809.
И ничего … Т.е. описанная ранее проблема со сбоем отображения XLSX файлов c некоторыми масками чисел осталась.
И видимо придётся как-то теперь с этим жить …

Make Clarion Great Again ! 
-
- ✯ Ветеран ✯
- Сообщения: 5159
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
libxlsxwriter for Clarion
Да, все правильно, мозги переключились на Excel, а там такой формат недопустим.
Посмотрел в сишном коде:
Код: Выделить всё
format_set_num_format(fmt1, "#,##0.00;-#,##0.00");
format_set_num_format(fmt2, "# ##0.00;-# ##0.00");
double nf = 12345.67;
worksheet_write_number(worksheet, 0, 0, nf, fmt1);
worksheet_write_number(worksheet, 1, 0, nf, fmt2);
12 345,67
C10, Win10x64
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
Прекрасно, что разобрались с очевидным. 
Кстати, ещё можно добавлять в маску подсветку отрицательных значений:

Кстати, ещё можно добавлять в маску подсветку отрицательных значений:
Код: Выделить всё
Self.Format.ExcelMask = "# ##0.00;[Red]-# ##0.00"
Make Clarion Great Again ! 
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
С числами проблем нет, эта тема обсуждалась только потому, что Вы спросили про десятичную точку в маске формата … 
Проблема есть с маской процента под Win10 1809 … см. моё сообщение ниже от 09 Октябрь 2018, 8:52 .

Проблема есть с маской процента под Win10 1809 … см. моё сообщение ниже от 09 Октябрь 2018, 8:52 .
Make Clarion Great Again ! 
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
Есть вопрос из дальнего замкадья. 
Можно ли как-то исхитриться, и присвоить XLSX.Format.ExcelMask строку с символом UNICODE ?
Конкретно интересует маска числа с символьным обозначением валюты "Российский рупь".

Можно ли как-то исхитриться, и присвоить XLSX.Format.ExcelMask строку с символом UNICODE ?
Конкретно интересует маска числа с символьным обозначением валюты "Российский рупь".

Make Clarion Great Again ! 
- Игорь Столяров
- Ветеран движения
- Сообщения: 8028
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 96 раз
libxlsxwriter for Clarion
Спасибо ! Неожиданно - заработало. 
Я то нумерованные форматы Microsoft Excel видел, но как-то считал, что они показывают суммы в ихних тугриках …

Я то нумерованные форматы Microsoft Excel видел, но как-то считал, что они показывают суммы в ихних тугриках …

Make Clarion Great Again ! 