Страница 1 из 1

объединение столбцов в LibreOffice

Добавлено: 05 сен 2013, 20:14
Petruxin
Продолжаю изучать LibreOffice. Возник вопрос по объединению столбцов (документ формата csv). Можно конечно копировать/вставлять , но это представляется глупым. В OpenOffice мне lzhl подсказал (спасибо ему за это) про функцию CONCATENATE, но я не готов еще и в ОО лезть. Поэтому еще развопрос : возможно ли каким-либо простым способом объединить три столбца addr_v в один с таким же названием(картинка прилагается)

Re: объединение столбцов в LibreOffice

Добавлено: 05 сен 2013, 20:42
Игорь Белов
В новом столбце во второй строке введите

Код: Выделить всё

=CONCATENATE(D2;", ";E2,", ";F2)
Разделитель ';' или ',' зависит от настроек.

Имена функций одинаковы в OO, LO и англоязычном Excel.

Re: объединение столбцов в LibreOffice

Добавлено: 05 сен 2013, 21:16
Petruxin
Огромное спасибо. Кроме всего прочего Ваше сообщение мне помогло мозг включить. :D
Все три строки не объединяет - пишет ошибка 501 (может из-за цифр в ячейке?)
Читаю справку...

Re: объединение столбцов в LibreOffice

Добавлено: 05 сен 2013, 21:26
Petruxin
Цифры не причем.
Первый со вторым - объединяет, Первый с третьи м- объединяет. Второй с третьим - тоже. Все три пытаюсь- ошибка 501.

Re: объединение столбцов в LibreOffice

Добавлено: 05 сен 2013, 21:37
Игорь Белов
Ошибка 501 - один из символов в формуле инвалид.

Re: объединение столбцов в LibreOffice

Добавлено: 05 сен 2013, 22:03
Petruxin
Спасибо. Походу инвалид где-то у меня в голове(или руках). Поразбираюсь. Если не смогу - проведу операции по 2 раза.
Еще раз спасибо.

Re: объединение столбцов в LibreOffice

Добавлено: 06 сен 2013, 07:39
Игорь Белов
Я должен извиниться. Причина ошибки, видимо, в том, что после E2 я поставил не тот разделитель параметров: ',' вместо ';'. Правильно так:

Код: Выделить всё

=CONCATENATE(D2;", ";E2;", ";F2)
Мой же Calc справлялся с ошибкой из-за того, что в настройках формул я поменял разделитель параметров с ';' на ','. После этого Calc сам при вводе формул меняет потенциальные разделители с ';' на ','. Это видно на картинке парой постов выше.

Re: объединение столбцов в LibreOffice

Добавлено: 06 сен 2013, 09:02
Petruxin
Извиняться не стоит. Я обратил на это внимание и все равно где-то косячил при попытке составить функцию. Вечером попробую еще раз скопировать Ваш вариант.

[ Сообщение с мобильного устройства ]

Re: объединение столбцов в LibreOffice

Добавлено: 06 сен 2013, 09:28
sadless74
странные люди.
1. выделяем три столбца, вырезаем
2. вставляем в SciTE, а лучше Notepad++
3. Ctrl+H (заменить) ищем \t (или просто символ табуляции вставляем) и меняем на ,
- если надо меняем ; на ,
- если надо меняем два пробела на один
- и ещё много разных шлифовок делается моментально
сли надо найти НОМЕР ДОМА И ЛИТЕРУ а они через пробел а НАДО БЕЗ ПРОБЕЛА то
([0-9]+)[ ]([^0-9]\,) - это значит ЦИФРА или ЦИФРЫ, ПРОБЕЛ, НЕ ЦИФРА....
Скобки обозначают куски и присваивает номер \1 пробел \2
в итоге:
Найти: ([0-9]+)[ ]([^0-9]\,)
Заменить \1\2
Сделает -> 33 а заменит на 33а

([0-9]+)\-([^0-9])
Заменить \1\2
Сделает -> 33-а заменит на 33а

НАДО СЛЕДИТЬ ГЛАЗАМИ!

Найти: (\,[ ])([0-9])
Заменить: \r\n\2
Сделает: , 1-11-11 заменит на: уберет запятую и телефон на строчку вниз


Найти: (\w\w\.)(\w+)
Заменить: \1 \2
Сделает: ул.Восточная заменит на ул. Восточная


Найти: \((\w+\.\s\w+)\)
Заменить: \r\n\1
Сделает: найдет (тел. 7-29-75) и сделает с новой строки тел. 7-29-75


Найти: ^(.+)\,
Заменить: \1;
Сделает: найдет ТЕКСТ, и сделает ТЕКСТ;


Найти: ^(.*)
Заменить: г. Миасс, \1
Сделает: в начало каждой строки добавить г. Миасс,


Найти: \,(\D+)$
Заменить: \r\n\1
Сделает: ищет с конца строки до первой ЛЮБОЙ ЦИФРЫ ищет ЗАПЯТУЮ д. Бакшан, ул. Южная, д.33а, сельский клуб д. Бакшан Боровского сельского поселения
и переводит кусок строки на новую строку


Найти: ([0-9])\?([0-9][0-9])\?([0-9][0-9])
Заменить: \1-\2-\3
Сделает: заменит 1?11?11 на 1-11-11


Найти: (.*)\t(.*);(.*)\,(.*)\;(.*)
Заменить: \1\t\2;\1,\3,\4;\5
Сделает: расставит слова в предложении по новому
4. выделить всё и вставить в LO Calc (текст без форматирования)

писать дольше чем сделать... секунды занимает...

Re: объединение столбцов в LibreOffice

Добавлено: 06 сен 2013, 09:45
Petruxin
Получилось по образу и подобию : )
Цитата: .... тут, что важно? тут всë важно. Берем мармышку,конструкция моя... (вроде из Осеннего марафона.)
Это я к тому, что надо примеры выполнять в точности. Пробелы видимо тоже что-то да значат.
Спасибо за потраченное время.
to sadless74 Как я вопрос поставил - так мне его и помогли решить. С Вашим способом мне не легче будет.

[ Сообщение с мобильного устройства ]

Re: объединение столбцов в LibreOffice

Добавлено: 06 сен 2013, 20:43
Petruxin
Закрывая тему отмечу, что после того как я заполнил первые 4 строки я нажал как Максим Дубинин научил и все автоматом заполнилось полными адресами наплевав на то, что данные в разных столбцах. По-моему это не логично, но получилось быстро. Всем спасибо за участие.

Re: объединение столбцов в LibreOffice

Добавлено: 06 сен 2013, 21:50
Игорь Белов
Помимо функции CONCATENATE() есть оператор конкатенации строк "&". Пример использования:

Код: Выделить всё

=D2&", "&E2&", "&F2