Libre/Open Office: преобразовываем текстовые значения в числовые.

Долгое время LibreOffice Calc/OpenOffice Calc меня полностью устраивали по своему функционалу для работы с электронными таблицами. Но однажды столкнулся с такой проблемой (актуальна для документов, которые получены путем экспорта из каких-нибудь *cad-программ, например Autocad, NanoCad и пр.): Calc не хотел производить расчет формул и не составлял правильно сводные таблицы. Причиной тому были данные, которые были записаны в текстовом виде. В данном случае речь идет не о формате ячеек. Если откроем окно управления форматом ячеек (пкм--> Формат ячеек) и выберем формат числовой, то формула все равно считать не будет. Если выделить такую ячейку и посмотреть в строку редактора формул, то мы увидим, что число записано в виде:
'2, т.е. перед самим числом стоит апостроф ( ' ).  Стандартные средства электронных таблиц Excel позволяют преобразовать подобные записи в числа, а вот LibreOffice/OpenOffice Calc, к сожалению, таким похвастаться не может. Excel подобные ячейки выделяет зеленым маркером в верхнем левом углу, а также  показывает значок с уведомлением об ошибке. Выглядит все это примерно таким образом:

Преобразование чисел в MS Excel
Для преобразования текста в число в Excel, достаточно выбрать пункт "Преобразовать в число" и наша проблема будет решена.
Для того, чтобы в OpenOffice LibreOffice Calc обладал таким же функционалом как MS Excel, нам потребуется установить одно дополнение:  Convert Text To Number (and date) , которое можно найти на страничке дополнений для OpenOffice и LibreOffice.
В установке данного дополнения (расширения) нету ничего сложного:

  • для начала скачиваем данное расширение в удобное для нас место;
  • запускаем наш офисный пакет (OpenOffice или LibreOffice);
  • в меню выбираем Сервис, затем Управление расширениями;
  • в появившемся окне нажимаем кнопку Добавить.... :
Управление расширениями в Libre/Open Office
  • в появившемся окне указываем путь к сохраненному ранее расширению и нажимаем кнопку Открыть;
  • если попросят, то принимаем условия лицензионного соглашения;
  • после удачной установки расширения, в окне управления расширениями должно появится наше установленное расширение; 
  • если все прошло успешно - перезагружаем наш офис, если нет - внимательно читаем .log  файлы и все сообщения об ошибках.
После удачной установки расширения на панели инструментов должен появится такой значок:
Значок TextConverter-а на панели инструментов
Кроме того, данное расширение можно также найти, выбрав в меню Сервис-->Дополнения-->CT2N:
Вызов расширений LibreOffice через меню
Итак, для того, чтобы воспользоваться данным расширением, достаточно выделить нужный диапазон значений, который мы будем преобразовывать в числа. Затем нажимаем на значок расширения CT2N либо выбираем в меню Сервис-->Дополнения -->CT2N . В результате появится окно с дополнительными свойствами преобразования:


Дополнительные свойства преобразования
Как видно из свойств, можно делать преобразования для всего листа, текущего выделения и определенных ячеек. Кроме того, в разделе действия можно дополнительно указать чтобы преобразованные ячейки выделялись нужным нам цветом, а также адреса преобразованных ячеек копировались в буфер обмена. После нажатия на кнопку Старт в нижней части окна будут выведены результаты проделанной работы:

Результаты преобразования
Естественно, что результирующее сообщение зависит от выбранных свойств для преобразования.
Ну вот собственно  и все - теперь с преобразованными числами можно выполнять различные действия: от простых математических до составления сводных таблиц.


Комментарии

  1. Спасибо.
    Информативно.

    ОтветитьУдалить
  2. а как преобразовать формулы в значения?

    ОтветитьУдалить
  3. Не совсем понятен вопрос. Напишите конкретный пример - будем вместе разбираться.
    В настройках OOo можно менять отображение на экране формул или значений: Сервис-->Параметры-->OpenOffice.Calc-->Вид. Справа находим раздел "Показать" и ставим/снимаем галочку напротив "Формулы"

    ОтветитьУдалить
  4. в екселе есть , есть ли в Libre?

    Иногда при копировании содержимого ячейки необходимо вставить только значение, а не базовую формулу, отображаемую в строке формул.

    Например, иногда требуется скопировать результирующее значение формулы в ячейку на другом листе или удалить значения, использованные в формуле, после копирования результирующего значения в другую ячейку на листе. В обоих случаях в конечной ячейке отображается ошибка ссылки на неправильную ячейку (#ССЫЛКА!), так как на ячейки, содержащие значения, использованные в формуле, больше нельзя сослаться.

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

    ОтветитьУдалить
  5. Есть. Правой кнопкой-> вставить как. Выбираем число, если это числовая формула

    ОтветитьУдалить
  6. Можно исправить с помощью "Найти и заменить" и регулярных выражений. В данном конкретном случае в найти ([\d]+) и в заменить на $1

    ОтветитьУдалить
  7. Можно, но не все умеют с ними работать.Для большинства пользователей офисных пакетов регулярные выражения - это нечто страшное и неизвестное :)

    ОтветитьУдалить

Отправить комментарий

Популярные сообщения из этого блога

Написание сервлетов в Java при помощи NetBeans

Права доступа в Debian и команды chmod и chown

Установка Apache Tomcat в ОС Windows