Коллеги нужна помощь по "сращиванию" значений в ячейке

Автор Oleghul@mail.ru, 23 июля 2015, 10:49

0 Пользователи и 1 гость просматривают эту тему.

Oleghul@mail.ru

Коллеги добрый день. Нужно решить задачу по "сращиванию" значений в ячейках. Очень надеюсь на вашу помощь. Готов вознаградить!
Прикрепляю файл превью и исходник в openoffice

denkin

#1
текст "сцепить" - функция CONCATENATE(Текст1;" ";Текст2;...)
преобразовать число в текст - функция TEXT(Число;0) 0 - формат

То есть я предлагаю:
- вам написать формулу в которой "соберете" все в ячейку как текст
- если где используются числа, то превращать их в текст перед этим
- копипастить формулу везде, где необходимо

JohnSUN

#2
Да нет, просто сцепить не подходит - Олег хочет кросс-пересечение, "каждый с каждым".
Но и ты, разумеется, прав. В том смысле, что макрос здесь не нужен
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

Oleghul@mail.ru

Мне нужно просто сцепить текстовые значения в ячейках

Oleghul@mail.ru

Цитата: JohnSUN от 23 июля 2015, 10:22Да нет, просто сцепить не подходит - Олег хочет кросс-пересечение, "каждый с каждым".
Но и ты, разумеется, прав. В том смысле, что макрос здесь не нужен
 Автоматика на формулах.xls (194 Кб - загружено 0 раз.)

Не совсем понял, что сделано в файле

JohnSUN

#5
В Calc'е это делает функция CONCATENATE (как и написал denkin) или знак амперсанда. В Экселе эта же функция называется СЦЕПИТЬ
Посмотрел, что у тебя файл сохранен в xls и подумал, что с макросом для АОО/LiO у тебя могут возникнуть проблемы. Формулы и проще и надежнее.

Цитата: Oleghul@mail.ru от 23 июля 2015, 12:51
Не совсем понял, что сделано в файле
В смысле, "совсем не понял"?  ;D
Нажми Ctrl+F3 (управление названиями). Видишь список имен? Для каждого из них задан или диапазон ячеек, или формула.
То есть начинаем с того, что присваиваем исходным данным свои имена. Это позволит в формулах вместо невразумительных адресов вида $Лист1.$A$2:$A$4 писать понятные слова - Значения, Территории, Характеристики.
Затем туда же, в этот набор именованных диапазонов вносим несколько формул - например, КолвоЗадач. Формула простая - COUNTIF(Сделать;">"""""). То есть "сосчитать количество непустых ячеек в диапазоне с именем Сделать". Это чтобы определиться с твоим условием "может быть сколько угодно". Когда знаем сколько значений в каждом из диапазонов, остается просто выбрать их по одному с помощью функции OFFSET() и сцепить между собой. Индекс очередного значения вычисляем с помощью функций MOD и INT от деления...

PS. А! Ты имел в виду, что в файле какая-то ерунда получилась? Каюсь, не перепроверил. Дело в том, что при сохранении в xls-формат "побились" ссылки в формулах. Перевыложил решение в формате ods - проверяй
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

Oleghul@mail.ru

#6
Вчитывался, вчитывался, вчитывался... ))) Скачал файлик, добавил значения и увидел, что делается все автоматически!!
Супер, но делается на 1000 строк, а если строк должно быть больше как быть?

И возможно ли сделать так, чтобы готовые значения были с пробелом вместо знака +

kompilainenn

Цитата: Oleghul@mail.ru от 23 июля 2015, 14:06Супер, но делается на 1000 строк, а если строк должно быть больше как быть?
растянуть формулу на нужное количество строк?
Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут