Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

18 Июль 2019, 16:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Здесь можно поблагодарить участников форума Улыбка
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1 2 3 »   Вниз
  Печать  
Автор Тема: по импорту CSV  (Прочитано 11800 раз)
0 Пользователей и 1 Гость смотрят эту тему.
maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Стартовое сообщение: 8 Октябрь 2014, 06:31 »

Доброго времени суток уважаемые форумчане!
Подобную тему уже открывал кто-то в 2010году http://forumooo.ru/index.php/topic,643.0.html#quickreply ,но нет полной ясности. Вышло сообщение о том что лучше создать новую тему - поэтому создаю.

1. Я прошу пояснить мне:   Выходит что Calc не может импортировать csv в готовый лист. Т.е. Calc может импортировать, но при этом создаёт только новый лист или новый документ?
Вообще мне лично не нужно чтобы он импортировал именно в заданный диапазон, а просто чтобы импортировал в заранее созданный, пустой, лист моего шаблона .ots , начиная в верхней, левой ячейки. Мне это нужно чтобы потом эти данные обработать формулами (т.е. чтобы связь была между листами, а если новый лист то связей нет)

2. Мне кажется такая задача распространённая, и если это не делает программа, значит наверняка существуют готовые какие-то дополнения, макросы, скрипты. Вопрос - существуют ли они? Или существуют другие варианты (как большинство людей решают эту задачу)?

3. Если они существуют, то подскажите пожалуйста где их можно взять (может это платный продукт)?



Вообще для себя лично в идеале я вижу это так: Открываю свой шаблон Calc -> Нажимаю горячую клавишу -> Диалоговое окно с  выбором пути -> Всё!, данные импортированы, а мои формулы обработали всю информацию.   Улыбка

Спасибо.

Записан
maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #1: 8 Октябрь 2014, 07:12 »

Вот жалко что нельзя мои формулы привязать к новому созданному листу (после импорта из CSV)!
Можно было бы просто горячую клавишу сделать на команду Вставка -> Лист из файла...    и всё решилось бы!
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 734


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #2: 8 Октябрь 2014, 09:09 »

А какой у вас Офис?
Записан

maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #3: 8 Октябрь 2014, 09:48 »

А какой у вас Офис?
У меня OpenOffice Apache 4.1.1
Записан
maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #4: 8 Октябрь 2014, 09:58 »

А в  LibreOffice это можно сделать?
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 734


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #5: 8 Октябрь 2014, 10:28 »

У меня OpenOffice Apache 4.1.1
Печаль безутешная... Плачущий А я уже хотел было поделиться своими макросами (в LibreOffice работает хорошо) , проверил в Apache OpenOffice 4.1.1 — получил кракозябры вместо текста, а с числами нормально (это потому что фильтр поломан).
А в  LibreOffice это можно сделать?
А в LibreOffice можно взять произвольный диапазон из файла .csv и вставить в любое место текущего документа не повреждая соседние данные (формулы будут вычислять вставленные значения)
в Apache OpenOffice 4.1.1 можно сделать тоже самое, только без текста на русском
Записан

maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #6: 8 Октябрь 2014, 11:23 »

О, если так, то может я на LibreOffice переберусь. Я уже как то пробовал, но у меня не корректно работала моя таблица рассчёта, которую Apache создал. Я всё равно хочу снова многое переделывать.
Но вы написали что "без текста на русском", можно и в Apache, просто у меня и так не будет текста на русском.
Записан
maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #7: 8 Октябрь 2014, 11:33 »

Поделитесь пожалуйста макросами Улыбка  Я наварно сегодня, завтра попробую Libre. Установлю наверно и то и другое и проверю.
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 734


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #8: 8 Октябрь 2014, 11:44 »

Если хотите остаться на Apache, выложите файл CSV.
Я, конечно выложу и для LibreOffice и для Apache, но это займёт время(сегодня). В любом случае выложите баш файл CSV.
Записан

maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #9: 8 Октябрь 2014, 12:09 »

Вот пример моего файла, но здесь есть ещё пока кирилица.
Если честно то разделить по столбцам также не удаёться корректно, я думал формулами доработать. Всё равно попробую тоже в Libre сегодня или завтра. Может получше будет.
В параметрах разделителя я ставил галочку в Другие и прописывал символ  '     и такой же символ в разделитель текста. Только тогда боле мене как то разделялось по столбцам. Но и то цифры все в одном столбце через запятую.

* proba2-Instances+Report.csv (9.72 Кб - загружено 13 раз.)
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 734


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #10: 8 Октябрь 2014, 12:18 »

Вот, например, для LibreOffice. Открываете Копия Решение.ods и в макросе в строке
Код:
sURL="file:///Адрес/Вашего/Файла/ПриходРасход.csv"
пишете адрес файла ПриходРасход.csv, потом жмёте на кнопку "ImportCSV" и в красной рамке появляются данные из файла ПриходРасход.csv, вычисляются формулы в зелёных ячейках и отрисовывается график.

Но в Apache кирилица превращается в кракозябрицу Смеющийся

* Копия Решение.ods (18.03 Кб - загружено 42 раз.)
* ПриходРасход.csv (2.1 Кб - загружено 28 раз.)

* Снимок выделенного.png (185.46 Кб, 1173x558 - просмотрено 43 раз.)
Записан

JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #11: 8 Октябрь 2014, 12:36 »

Там при импорте кодировку нужно жестко задать Юникод (UTF-8), чтобы вместо кракозябр кириллицу получить.
А с числами по габаритам - беда! Эта запятая в числе всю красоту портит. В тестовом-то файле по X и Y ноли после запятой, а вот по Z встречаются дробные значения.
Тут два варианта: или смириться и восстанавливать полное значение из двух смежных ячеек, или предварительно обрабатывать исходный файл (менять запятую перед цифра-mm на точку).

Я бы все-таки посмотрел в сторону Вставка-Лист из файла... с флажком Связь с файлом. Тогда один раз настроив фильтр и сохранив книгу в шаблоне, можно было бы по событию Документ создан спрашивать путь к новым исходным данным (стандартный диалог открытия файла) и прописывать его в .setLinkUrl() для этого листа.
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #12: 8 Октябрь 2014, 13:29 »

Спасибо большое rami !  Теперь я попробую


Там при импорте кодировку нужно жестко задать Юникод (UTF-8), чтобы вместо кракозябр кириллицу получить.
Да действительно получаеться без кракозябр.

Я бы все-таки посмотрел в сторону Вставка-Лист из файла... с флажком Связь с файлом. Тогда один раз настроив фильтр и сохранив книгу в шаблоне, можно было бы по событию Документ создан спрашивать путь к новым исходным данным (стандартный диалог открытия файла) и прописывать его в .setLinkUrl() для этого листа.
Да это интересно. Мне надо обдумать всё. А чтобы документ запрашивал путь при открытии, напомните где это настраивается? Вот я захожу Сервис -> Настройки -> Вкладка События -> Документ создан.... , а дальше я вижу что можно присвоить макрос, но какой?

и прописывать его в .setLinkUrl() для этого листа.
Здесь не понятно, поясните пожалуйста.

Записан
maxim
Участник
**
Offline Offline

Пол: Мужской
Сообщений: 32


« Ответ #13: 8 Октябрь 2014, 13:41 »

Тут два варианта: или смириться и восстанавливать полное значение из двух смежных ячеек, или предварительно обрабатывать исходный файл (менять запятую перед цифра-mm на точку).
Возможно удастся заменить запятые на точки в дробных числах (сейчас прочитал на форуме иностранном) Но если нет, то как я понимаю можно востановить всё формулами? Или нет?
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 734


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #14: 8 Октябрь 2014, 14:09 »

Было бы интересно знать откуда берутся такие кривые файлы CSV? Наверно кто-то создаёт "красивые" таблицы с "шикарным" форматированием, а потом сохраняет в формат CSV и числа вида "50,0mm" воспринимаются как текст с последующей разбивкой по запятой, а в колонке "AREA" наверно была формула, значение которой передаётся в соответствии с настройками языка(с разделителем точкой). Нужно правильно создавать файл CSV , тогда не будет проблем с импортом, инче придётся много "работать ручками". maxim, а какие данные нужно импортировать? Может быть можно "выдернуть" только нужный "кусок" данных.
Возможно удастся заменить запятые на точки в дробных числах (сейчас прочитал на форуме иностранном) Но если нет, то как я понимаю можно востановить всё формулами? Или нет?
Исправить можно и формулами и макросами, но это в крайнем случае безысходности. Представьте, что вы заказали новенький автомобиль Крутой, а вам привезли Шокирован вдребезги разбитую машину со словами: "можно починить и будет как новенькая"
Записан

Страниц: 1 2 3 »   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!