Excel значение через запятую в строки

Бывает, что необходимо какой-то список слов, фраз или других данных, расположенных списком в столбик преобразовать в последовательность строкой через запятую или наоборот из списка через запятую сформировать столбец, где каждая отделенная запятой фраза идет с новой строки. Мне, например, это бывает нужно при работе со списками ключевых слов в SEO-задачах или при работе с системами контекстной рекламы.

Есть, как минимум, три способа выполнить поставленную задачу:

  1. Преобразовать программе Notepad++
  2. Cтолбец в строку Excel через запятую
  3. Использовать Онлайн-скрипт

Содержание

  1. Преобразование в программе Notepad++ с помощью регулярных выражений
  2. Преобразование столбца в строку через запятую в Excel
  3. Столбик через запятую и обратно онлайн
  4. Список через запятую > в столбик
  5. Столбик > список через запятую

Преобразование в программе Notepad++ с помощью регулярных выражений

Эта программа известна практически всем, кто занимался редактированием сайтов или работал с кодом. Если у вас ее еще нет, советую скачать и поставить.

Вставляем в программу список для преобразования.
Преобразование списка через запятую в столбик в Нотпад
Для примера я взял набор фраз через запятую. Нажимаем комбинацию клавиш Ctrl+H (поиск с заменой), в открывшемся окне ставим метку Режим поиска — Расширенный, Найти: , (запятая и пробел), Заменить на: n Заменить все. Получаем список столбиком.

Если нужно из столбика сделать список через запятую, тогда то же самое, только Найти: rn и Заменить на: , (запятая и пробел).
Если что-то заменилось не так, как надо, делаем отмену Ctrl+Z и пробуем по-другому, например, ищем только n.

Преобразование столбца в строку через запятую в Excel

Используем формулу «лесенка».
Скачать готовый файл можно здесь: 4memo-ru-stolbik-zapyataya.xls
Запятую в самой первой ячейке можно заменить, на что-то другое, если нужно.
Формулу во втором столбце растягиваем вниз, насколько потребуется.
Если полученный список нужно вставить в другой лист эксель, то не забываем избавиться от формул, вставив предварительно данные в блокнот.

Столбик через запятую и обратно онлайн

Этот вариант подойдет для тех, кому нужно срочно, прямо на этой странице, решить задачу конвертации списка — за вас все сделает скрипт.

Список через запятую > в столбик

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

Столбик > список через запятую

Лично для меня из всех трех способов перестроения списка наиболее удобным является самый первый — через Нотпад, а вы выберите тот, который удобен вам.
Надеюсь, кому-то эта страница облегчит жизнь.

 

Siroff

Пользователь

Сообщений: 139
Регистрация: 18.10.2013

Добрый день, подскажите формулу чтобы расположить слова из столбика в одну строку через запятую
Пример:
Иванов
Петров
Сидоров
Нужно так: Иванов,Петров,Сидоров.

 

The_Prist

Пользователь

Сообщений: 14181
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

Сцепить много ячеек с указанным разделителем

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Vik_tor

Пользователь

Сообщений: 1927
Регистрация: 19.09.2014

=СЦЕПИТЬ(A2;»,»;A3;»,»;A4)

 

sv2013

Пользователь

Сообщений: 657
Регистрация: 09.06.2015

#4

27.11.2015 14:39:06

добрый день,можно также макросом

Код
Sub yyy()
    Dim z(), i&, t$
    z = Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row).Value: t = z(1, 1)
    For i = 2 To UBound(z): t = t & "," & z(i, 1): Next
   Range("B1") = Trim(t)
End Sub

Прикрепленные файлы

  • example_27_11_2015_pl.xls (35.5 КБ)

 

Siroff

Пользователь

Сообщений: 139
Регистрация: 18.10.2013

Вопрос не решен, в файле более 100 слов таким образом =СЦЕПИТЬ(A2;»,»;A3;»,»;A4) прописывать в ручную не подходит, другие ответы не понял как реализовать.  пример приложил.

 

Siroff, не поленитесь и пройдите по ссылке второго комментария

 

JayBhagavan

Пользователь

Сообщений: 11833
Регистрация: 17.01.2014

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

Самое простое:
=СЦЕПИТЬ($A1;ЕСЛИ(ДЛСТР(ИНДЕКС(C:C;СТРОКА()+1));СЦЕПИТЬ(«, «;ИНДЕКС(C:C;СТРОКА()+1));»»))

Копируете и вставляете как значение куда надо первую яч. с формулой.

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

Vik_tor

Пользователь

Сообщений: 1927
Регистрация: 19.09.2014

добавил кнопку в #5 для наглядности. макросы надо разрешить.
100 слов это сила.

 

Siroff

Пользователь

Сообщений: 139
Регистрация: 18.10.2013

 

Vik_tor

Пользователь

Сообщений: 1927
Регистрация: 19.09.2014

Спасибо надо говорить

sv2013

, его макрос.

 

Siroff

Пользователь

Сообщений: 139
Регистрация: 18.10.2013

 

Siroff

Пользователь

Сообщений: 139
Регистрация: 18.10.2013

Подскажите почему данный макрос не работает с емейл адресами? Точнее обрабатывает, но только первые 1500, далее нет.
Кто нибудь может поправить?
Пример приложил.
файл большой, не влазит, загрузил в

облако

.

 

The_Prist

Пользователь

Сообщений: 14181
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

Потому что у текста в одной ячейке есть ограничение на кол-во символов = 32767
Так же есть ограничение на кол-во символов в просмотре в строке формул = 1024
Возможно, Вы просто не видите всех данных в просмотре. Но они есть.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Siroff

Пользователь

Сообщений: 139
Регистрация: 18.10.2013

#14

03.11.2016 16:45:56

Цитата
The_Prist написал:
Возможно, Вы просто не видите всех данных в просмотре. Но они есть.

Пробовал, копировал и вставлял в программу для отправки сообщений нет там всех данных, только первые 1500.

 

The_Prist

Пользователь

Сообщений: 14181
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

сколько по Вашему среднее кол-во символов в каждом e-mail?  У Вас — 20.
1500 * 20 = 30000
Есть предположение — что как раз и получается 32767 в итоге с Вашими 1500 адресами. А я выше писал максимальную вместимость одной ячейки.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

RAN

Пользователь

Сообщений: 7091
Регистрация: 21.12.2012

#16

03.11.2016 17:46:36

Цитата
The_Prist написал:
Есть предположение — что как раз и получается 32767

Как бы не так  :D
Debug.Print Len(t) = 231 452

 

The_Prist

Пользователь

Сообщений: 14181
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

#17

03.11.2016 17:51:22

Ну я имел ввиду, что получается не меньше этого :) И притом речь про 1500 адресов шла, а не о всех. А они как раз видимо где-то в пределах 32767 символов и получились. Вот и выводит в ячейку тот максимум, который может быть записан.

Изменено: The_Prist03.11.2016 17:52:34

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

Содержание

  1. Слова через запятую сделать списком в столбик и наоборот — 3 способа
  2. Преобразование в программе Notepad++ с помощью регулярных выражений
  3. Преобразование столбца в строку через запятую в Excel
  4. Столбик через запятую и обратно онлайн
  5. Список через запятую > в столбик
  6. Столбик > список через запятую
  7. Склеивание текста по условию
  8. Способ 0. Формулой
  9. Способ 1. Макрофункция склейки по одному условию
  10. Способ 2. Сцепить текст по неточному условию
  11. Способ 3. Макрофункция склейки текста по двум условиям
  12. Способ 4. Группировка и склейка в Power Query
  13. Excel таблицы через запятую

Слова через запятую сделать списком в столбик и наоборот — 3 способа

Бывает, что необходимо какой-то список слов, фраз или других данных, расположенных списком в столбик преобразовать в последовательность строкой через запятую или наоборот из списка через запятую сформировать столбец, где каждая отделенная запятой фраза идет с новой строки. Мне, например, это бывает нужно при работе со списками ключевых слов в SEO-задачах или при работе с системами контекстной рекламы.

Есть, как минимум, три способа выполнить поставленную задачу:

Преобразование в программе Notepad++ с помощью регулярных выражений

Эта программа известна практически всем, кто занимался редактированием сайтов или работал с кодом. Если у вас ее еще нет, советую скачать и поставить.

Вставляем в программу список для преобразования.

Для примера я взял набор фраз через запятую. Нажимаем комбинацию клавиш Ctrl+H (поиск с заменой), в открывшемся окне ставим метку Режим поиска — Расширенный, Найти: , (запятая и пробел), Заменить на: n Заменить все. Получаем список столбиком.

Если нужно из столбика сделать список через запятую, тогда то же самое, только Найти: rn и Заменить на: , (запятая и пробел).
Если что-то заменилось не так, как надо, делаем отмену Ctrl+Z и пробуем по-другому, например, ищем только n.

Преобразование столбца в строку через запятую в Excel

Используем формулу «лесенка».
Скачать готовый файл можно здесь: 4memo-ru-stolbik-zapyataya.xls
Запятую в самой первой ячейке можно заменить, на что-то другое, если нужно.
Формулу во втором столбце растягиваем вниз, насколько потребуется.
Если полученный список нужно вставить в другой лист эксель, то не забываем избавиться от формул, вставив предварительно данные в блокнот.

Столбик через запятую и обратно онлайн

Этот вариант подойдет для тех, кому нужно срочно, прямо на этой странице, решить задачу конвертации списка — за вас все сделает скрипт.

Список через запятую > в столбик

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

Столбик > список через запятую

Лично для меня из всех трех способов перестроения списка наиболее удобным является самый первый — через Нотпад, а вы выберите тот, который удобен вам.
Надеюсь, кому-то эта страница облегчит жизнь.

Ничего не получилось

А что именно «не получилось»?

Б — это второй вариант с эксель?
Только что проверил, скачав файл, добавив данных в первый столбец и протянув формулу во втором столбце — все работает.
Напишите подробно, как Вы делали пошагово, тогда можно будет понять, где ошибка.

Все работает! Спасибо!
Все способы сверху даже не стал использовать. А зачем? Если есть то же самое, но он-лайн.
Давно искал. Сохраню страницу в рабочие закладки.
Еще раз Спасибо!

Пожалуйста! Рад, что Вам пригодилось.

Всем доброго времени суток! В первую очередь спасибо автору за труды! Реально на работе нужна и пригодилась функция «Список через запятую > в столбик», которая через скрипт на сайте. Вот только не всегда есть возможность зайти на Ваш сайт для этого. С готовым файлом «4memo-ru-stolbik-zapyataya.xls» я так и не понял как это реализовать. Все таки как это сделать в файле excel, чтобы было примерно как на сайте, в какую-нибудь ячейку ввел данные с запятыми, а excel автоматически или по нажатию кнопки распределил их в столбик, чтоб можно было скопировать и пр. Только уже готовый файл, если можно?

Этот файл предназначен для преобразования только из столбца в список через запятую (или другой разделитель).
Вашу задачу (список через запятую или другой разделитель > в столбик) можно решить в следующие два этапа:
1. Открываем чистый лист Excel, вставляем в первую ячейку ваш список, потом идем в меню Данные > Текст по столбцам, в открывшемся диалоговом окне выбираем Формат данных > С разделителями, жмем Далее, выбираем разделитель «запятая», жмем Далее и потом Готово. Все, что между запятыми должно распределиться по отдельным столбцам.
2. Теперь то, что у нас распределено по горизонтали в столбцах, нужно распределить по вертикали в строках. Для этого выделяем, все ячейки, в которых есть данные, либо целиком строку, копируем Ctrl+C, опускаем курсор в свободную ячейку ниже, клик правой кнопкой мыши и в контекстном меню выбираем: Специальная вставка > Транспонировать.
Чтобы все это срабатывало по нажатию кнопки, как Вы хотите, наверное можно написать какой-нибудь макрос, но я сейчас не готов этим заниматься.

Если Вы или кто-то еще напишет такой макрос, то я готов разместить файл с ним в статье с указанием авторства.

Источник

Склеивание текста по условию

Про то, как можно быстро склеивать текст из нескольких ячеек в одну и, наоборот, разбирать длинную текстовую строку на составляющие я уже писал. Теперь же давайте рассмотрим близкую, но чуть более сложную задачу — как склеивать текст из нескольких ячеек при выполнении определенного заданного условия.

Допустим, что у нас имеется база данных по клиентам, где одному названию компании может соответствовать несколько разных email’ов ее сотрудников. Наша задача состоит в том, чтобы собрать все адреса по названиям компаний и сцепить их (через запятую или точку с запятой), чтобы сделать потом, например, почтовую рассылку по клиентам, т.е. получить на выходе что-то похожее на:

Другими словами, нам нужен инструмент, который будет склеивать (сцеплять) текст по условию — аналог функции СУММЕСЛИ (SUMIF) , но для текста.

Способ 0. Формулой

Не очень изящный, зато самый простой способ. Можно написать несложную формулу, которая будет проверять отличается ли компания в очередной строке от предыдущей. Если не отличается, то приклеиваем через запятую очередной адрес. Если отличается, то «сбрасываем» накопленное, начиная заново:

Минусы такого подхода очевидны: из всех ячеек полученного дополнительного столбца нам нужны только последние по каждой компании (желтые). Если список большой, то чтобы их быстро отобрать придется добавить еще один столбец, использующий функцию ДЛСТР (LEN) , проверяющий длину накопленных строк:

Теперь можно отфильтровать единички и скопировать нужные склейки адресов для дальнейшего использования.

Способ 1. Макрофункция склейки по одному условию

Если исходный список не отсортирован по компаниям, то приведенная выше простая формула не работает, но можно легко выкрутиться с помощью небольшой пользовательской функции на VBA. Откройте редактор Visual Basic нажатием на сочетание клавиш Alt+F11 или с помощью кнопки Visual Basic на вкладке Разработчик (Developer) . В открывшемся окне вставьте новый пустой модуль через меню Insert — Module и скопируйте туда текст нашей функции:

Если теперь вернуться в Microsoft Excel, то в списке функций (кнопка fx в строке формул или вкладка Формулы — Вставить функцию) можно будет найти нашу функцию MergeIf в категории Определенные пользователем (User Defined) . Аргументы у функции следующие:

Способ 2. Сцепить текст по неточному условию

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

Поддерживаются стандартные спецсимволы подстановки:

  • звездочка (*) — обозначает любое количество любых символов (в т.ч. и их отсутствие)
  • вопросительный знак (?) — обозначает один любой символ
  • решетка (#) — обозначает одну любую цифру (0-9)

По умолчанию оператор Like регистрочувствительный, т.е. понимает, например, «Орион» и «оРиОн» как разные компании. Чтобы не учитывать регистр можно добавить в самое начало модуля в редакторе Visual Basic строчку Option Compare Text, которая переключит Like в режим, когда он невосприимчив к регистру.

Таким образом можно составлять весьма сложные маски для проверки условий, например:

  • ?1##??777RUS — выборка по всем автомобильным номерам 777 региона, начинающимся с 1
  • ООО* — все компании, название которых начинается на ООО
  • ##7## — все товары с пятизначным цифровым кодом, где третья цифра 7
  • . — все названия из пяти букв и т.д.

Способ 3. Макрофункция склейки текста по двум условиям

В работе может встретиться задача, когда сцеплять текст нужно больше, чем по одному условию. Например представим, что в нашей предыдущей таблице добавился еще один столбец с городом и склеивание нужно проводить не только для заданной компании, но еще и для заданного города. В этом случае нашу функцию придется немного модернизировать, добавив к ней проверку еще одного диапазона:

Применяться она будет совершенно аналогично — только аргументов теперь нужно указывать больше:

Способ 4. Группировка и склейка в Power Query

Решить проблему можно и без программирования на VBA, если использовать бесплатную надстройку Power Query. Для Excel 2010-2013 ее можно скачать здесь, а в Excel 2016 она уже встроена по умолчанию. Последовательность действий будет следующей:

Power Query не умеет работать с обычными таблицами, поэтому первым шагом превратим нашу таблицу в «умную». Для этого ее нужно выделить и нажать сочетание Ctrl + T или выбрать на вкладке Главная — Форматировать как таблицу (Home — Format as Table) . На появившейся затем вкладке Конструктор (Design) можно задать имя таблицы (я оставил стандартное Таблица1):

Теперь загрузим нашу таблицу в надстройку Power Query. Для этого на вкладке Данные (если у вас Excel 2016) или на вкладке Power Query (если у вас Excel 2010-2013) жмем Из таблицы (Data — From Table) :

В открывшемся окне редактора запросов выделяем щелчком по заголовку столбец Компания и сверху жмем кнопку Группировать (Group By) . Вводим имя нового столбца и тип операции в группировке — Все строки (All Rows) :

Жмем ОК и получаем для каждой компании мини-таблицу сгруппированных значений. Содержимое таблиц хорошо видно, если щелкать левой кнопкой мыши в белый фон ячеек (не в текст!) в получившемся столбце:

Теперь добавим еще один столбец, где с помощью функции склеим через запятую содержимое столбцов Адрес в каждой из мини-таблиц. Для этого на вкладке Добавить столбец жмем Пользовательский столбец (Add column — Custom column) и в появившемся окне вводим имя нового столбца и формулу сцепки на встроенном в Power Query языке М:

Обратите внимание, что все М-функции регистрочувствительные (в отличие от Excel). После нажатия на ОК получаем новый столбец со склееными адресами:

Осталось удалить ненужный уже столбец ТаблАдресов (правой кнопкой мыши по заголовку — Удалить столбец) и выгрузить результаты на лист, нажав на вкладке Главная — Закрыть и загрузить (Home — Close and load) :

Важный нюанс : в отличие от предыдущих способов (функций), таблицы из Power Query не обновляются автоматически. Если в будущем произойдут какие-либо изменения в исходных данных, то нужно будет щелкнуть правой кнопкой в любое место таблицы результатов и выбрать команду Обновить (Refresh) .

Источник

Excel таблицы через запятую

Модератор форума: китин, _Boroda_

Мир MS Excel » Вопросы и решения » Вопросы по Excel » Вывод значений через запятую из таблицы (Формулы/Formulas)

Вывод значений через запятую из таблицы

azZazZello Дата: Среда, 15.07.2015, 07:18 | Сообщение № 1
Nic70y Дата: Среда, 15.07.2015, 07:35 | Сообщение № 2
azZazZello Дата: Среда, 15.07.2015, 07:42 | Сообщение № 3
azZazZello Дата: Среда, 15.07.2015, 08:45 | Сообщение № 4
Nic70y Дата: Среда, 15.07.2015, 09:14 | Сообщение № 5
ShAM Дата: Среда, 15.07.2015, 09:52 | Сообщение № 6
azZazZello Дата: Среда, 15.07.2015, 10:05 | Сообщение № 7
_Boroda_ Дата: Среда, 15.07.2015, 10:06 | Сообщение № 8

Ответить

Rioran Дата: Среда, 15.07.2015, 10:07 | Сообщение № 9

Ради спортивного интереса предлагаю решение пользовательской функцией.

Во вложении пример использования. Макросы должны быть разрешены. Первые два аргумента должны быть столбцами, 3-й аргумент — проверочное имя. Аргументы функции:

Ради спортивного интереса предлагаю решение пользовательской функцией.

Во вложении пример использования. Макросы должны быть разрешены. Первые два аргумента должны быть столбцами, 3-й аргумент — проверочное имя. Аргументы функции:

Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279

Сообщение azZazZello, здравствуйте.

Ради спортивного интереса предлагаю решение пользовательской функцией.

Во вложении пример использования. Макросы должны быть разрешены. Первые два аргумента должны быть столбцами, 3-й аргумент — проверочное имя. Аргументы функции:

sv2014 Дата: Среда, 15.07.2015, 11:15 | Сообщение № 10

azZazZello, добрый день,
могу предложить вам макрос,который решает ваш вопрос при любом количестве ваших данных
в столбце F

azZazZello, добрый день,
могу предложить вам макрос,который решает ваш вопрос при любом количестве ваших данных
в столбце F

Сообщение azZazZello, добрый день,
могу предложить вам макрос,который решает ваш вопрос при любом количестве ваших данных
в столбце F

sv2014 Дата: Среда, 15.07.2015, 11:43 | Сообщение № 11

azZazZello, или такой же вариант с пробелом при необходимости.
На вашем файле- примере проверил.

azZazZello, или такой же вариант с пробелом при необходимости.
На вашем файле- примере проверил.

Сообщение azZazZello, или такой же вариант с пробелом при необходимости.
На вашем файле- примере проверил.

Alekc7711 Дата: Суббота, 22.02.2020, 02:05 | Сообщение № 12

sv2014, здравствуйте.
Подскажите, что не так делаю?
Немного покрутил макрос, выпала ошибка
http://prntscr.com/r5xauo

sv2014, здравствуйте.
Подскажите, что не так делаю?
Немного покрутил макрос, выпала ошибка
http://prntscr.com/r5xauo

Сообщение sv2014, здравствуйте.
Подскажите, что не так делаю?
Немного покрутил макрос, выпала ошибка
http://prntscr.com/r5xauo

Alekc7711 Дата: Суббота, 22.02.2020, 02:30 | Сообщение № 13
Pelena Дата: Суббота, 22.02.2020, 08:04 | Сообщение № 14
«Черт возьми, Холмс! Но как. »
Ю-money 41001765434816

Ответить

solniechnaya Дата: Воскресенье, 05.03.2023, 09:57 | Сообщение № 15

Друзья,
Не получается решить аналогичную задачу- где в виде итоговой таблицы нужна сводная.
В кликабельной ячейке сводной таблицы нужны не значения (например суммы), а номера строк перечисленных через запятую.

Пример во вложении

С Уважением.
Solniechnaya@gmail.com

Друзья,
Не получается решить аналогичную задачу- где в виде итоговой таблицы нужна сводная.
В кликабельной ячейке сводной таблицы нужны не значения (например суммы), а номера строк перечисленных через запятую.

Пример во вложении

С Уважением.
Solniechnaya@gmail.com solniechnaya

Сообщение Друзья,
Не получается решить аналогичную задачу- где в виде итоговой таблицы нужна сводная.
В кликабельной ячейке сводной таблицы нужны не значения (например суммы), а номера строк перечисленных через запятую.

Пример во вложении

С Уважением.
Solniechnaya@gmail.com Автор — solniechnaya
Дата добавления — 05.03.2023 в 09:57

jakim Дата: Воскресенье, 05.03.2023, 10:23 | Сообщение № 16
jakim Дата: Воскресенье, 05.03.2023, 10:46 | Сообщение № 17
jakim Дата: Воскресенье, 05.03.2023, 12:13 | Сообщение № 18
прохожий2019 Дата: Воскресенье, 05.03.2023, 12:52 | Сообщение № 19

хотя задачка, конечно, для DAX:

хотя задачка, конечно, для DAX:

хотя задачка, конечно, для DAX:

solniechnaya Дата: Воскресенье, 05.03.2023, 21:30 | Сообщение № 20

прохожий2019, jakim,
Благодарю за предложенные варианты решения,
А всё же можно сделать с использованием кликабельной сводной таблицы?
Если мы дабл-кликнем в примере на жёлтую ячейку с числом «2» в сводной таблице, то откроется лист с детальной информацией.
также ожидается при дабл-клике в итоговой таблице на ячейку с «6, 9»

прохожий2019, jakim,
Благодарю за предложенные варианты решения,
А всё же можно сделать с использованием кликабельной сводной таблицы?
Если мы дабл-кликнем в примере на жёлтую ячейку с числом «2» в сводной таблице, то откроется лист с детальной информацией.
также ожидается при дабл-клике в итоговой таблице на ячейку с «6, 9»

Сообщение прохожий2019, jakim,
Благодарю за предложенные варианты решения,
А всё же можно сделать с использованием кликабельной сводной таблицы?
Если мы дабл-кликнем в примере на жёлтую ячейку с числом «2» в сводной таблице, то откроется лист с детальной информацией.
также ожидается при дабл-клике в итоговой таблице на ячейку с «6, 9»

С надеждой, Автор — solniechnaya
Дата добавления — 05.03.2023 в 21:30

Источник

Adblock
detector

у меня есть задача создать простой лист Excel, который принимает неопределенное количество строк в столбце, как это:

1234
123461
123151
11321

и сделать их в список через запятую в другой ячейке, что пользователь может легко скопировать и вставить в другую программу, как это:

1234,123461,123151,11321

какой самый простой способ сделать это?

источник

предполагая, что ваши данные начинаются с A1, я бы поставил следующее в столбец B:

B1:

=A1

B2:

=B1&","&A2

затем можно вставить столбец B2 вниз по всему столбцу. Последняя ячейка в столбце B теперь должна быть списком через запятую столбца A.

отвечен Sux2Lose 2011-02-02 16:37:59

источник

  • скопируйте столбец в Excel
  • Открыть Word
  • «вставить специальный» как текст только
  • выберите данные в Word (тот, который вам нужно преобразовать в текст, разделенный ,),
    нажмите CtrlH (найти и заменить)
  • в поле» найти что » введите ^p
  • в поле «заменить на» введите ,
  • выберите «заменить все»

источник

на самом деле я только что создал модуль в VBA, который выполняет всю работу. Он берет мой список диапазонов и создает строку с разделителями-запятыми, которая выводится в ячейку по моему выбору:

Function csvRange(myRange As Range)
    Dim csvRangeOutput
    Dim entry as variant
    For Each entry In myRange
        If Not IsEmpty(entry.Value) Then
            csvRangeOutput = csvRangeOutput & entry.Value & ","
        End If
    Next
    csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 1)
End Function

Итак, в моей камере, я просто ставлю =csvRange(A:A) и это дает мне список разделенных запятыми.

источник

Если у вас есть Office 365 Excel, то вы можете использовать TEXTJOIN ():

=TEXTJOIN(",",TRUE,A:A)

enter image description here

источник

альтернативный подход заключается в том, чтобы вставить столбец Excel в этот инструмент в браузере:

преобразовать.город/колонки в разделенный запятыми список

он преобразует столбец текста до запятой.

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

отвечен sunset 2015-04-22 20:56:08

источник

вы могли бы сделать нечто подобное. Если вы не говорите об огромной электронной таблице, это будет выполнять «ok»…

  • Alt-F11, создать макрос для создания списка (см. код ниже)
  • назначить его на ярлык или кнопку панели инструментов
  • пользователь вставляет свой столбец чисел в столбец A, нажимает кнопку, и их список переходит в ячейку B1.

вот код макроса VBA:

Sub generatecsv() 

Dim i As Integer
Dim s As String

i = 1

Do Until Cells(i, 1).Value = ""
    If (s = "") Then
        s = Cells(i, 1).Value
    Else
        s = s & "," & Cells(i, 1).Value
    End If
    i = i + 1 
Loop

Cells(1, 2).Value = s

End Sub

обязательно установите формат ячейки B1 в «текст», или вы получите испорченный номер. Я уверен, что вы можете сделать это и в VBA, но я не уверен, как на данный момент, и нужно вернуться к работе. ;)

отвечен mpeterson 2011-02-02 19:12:57

источник

используйте vi или vim, чтобы просто поставить запятую в конце каждой строки:

%s/$/,/

объяснить эту команду:

  • % означает выполнить действие (т. е. найти и заменить) для всех строк
  • s указывает на замещение
  • / разделяет аргументы (т. е. s/find/replace/options)
  • $ обозначает конец строки
  • , текст замены в данном случае

источник

вы можете использовать руководство How-To Geek по превращению строки в столбец и просто обратить его. Затем экспортируйте данные в формате csv (формат с разделителями-запятыми), и у вас есть свой текстовый список разделенных запятыми! Вы можете скопировать из блокнота и положил его обратно в Excel, если вы хотите. Кроме того, если вы хотите пробел после запятой, вы можете сделать функцию поиска и замены, заменив», «на»,». Надеюсь, это поможет!

отвечен Duall 2011-02-02 16:12:16

источник

muncherelli, мне понравился ваш ответ, и я подправил его :). Просто незначительная вещь, бывают случаи, когда я вытаскиваю данные из листа и использую его для запроса к базе данных. Я добавил необязательный параметр «textQualify», который помогает создать разделенный запятыми список, используемый в запросе.

Function csvRange(myRange As Range, Optional textQualify As String)
    'e.g. csvRange(A:A)  or csvRange(A1:A2,"'") etc in a cell to hold the string
    Dim csvRangeOutput
    For Each entry In myRange
        If Not IsEmpty(entry.Value) Then
            csvRangeOutput = csvRangeOutput & textQualify & entry.Value & textQualify & ","
        End If
    Next
    csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 1)
End Function

отвечен mitch 2011-04-08 15:54:06

источник

я улучшил generatecsv () sub для обработки листа excel, который содержит несколько списков с пустыми строками, разделяющими как заголовки каждого списка, так и списки из их названий. пример

list title 1

item 1
item 2

list title 2

item 1
item 2

и объединяет их, конечно, в несколько строк, 1 в списке.

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

    Sub generatecsv()

      Dim dataRow As Integer
      Dim listRow As Integer
      Dim data As String

      dataRow = 1: Rem the row that it is being read from column A otherwise known as 1 in vb script
      listRow = 1: Rem the row in column B that is getting written

      Do Until Cells(dataRow, 1).Value = "" And Cells(dataRow + 1, 1).Value = ""
        If (data = "") Then
          data = Cells(dataRow, 1).Value
        Else
          If Cells(dataRow, 1).Value <> "" Then
            data = data & "," & Cells(dataRow, 1).Value
          Else
            Cells(listRow, 2).Value = data
            data = ""
            listRow = listRow + 1
          End If
        End If
        dataRow = dataRow + 1
      Loop

      Cells(listRow, 2).Value = data

    End Sub

источник

Sux2Lose ответ — мой предпочтительный метод, но он не работает, если вы имеете дело с более чем парой тысяч строк, и может сломаться еще меньше строк, Если ваш компьютер не имеет много доступной памяти.

Лучшая практика в этом случае, вероятно, скопировать столбец, создать новую книгу, мимо специальных в A1 новой книги и Transpose Так что теперь столбец подряд. Затем сохраните книгу как .csv. Ваш csv теперь в основном простой текст разделенный запятыми список, который можно открыть в текстовом редакторе.

Примечание: не забудьте транспонировать столбец в строку перед сохранением в формате csv. В противном случае Excel не будет знать, чтобы придерживаться запятых между значениями.

источник

один из самых легких путей использовать замазин.co веб-приложение для такого рода задач разделения запятых. Просто заполните данные столбца и нажмите кнопку Конвертировать, чтобы сделать список разделенных запятыми. Вы даже можете использовать некоторые другие настройки для улучшения желаемого результата.

http://zamazin.co/comma-separator-tool

enter image description here

отвечен Hakan 2016-11-22 08:28:17

источник

использовать =CONCATENATE(A1;",";A2;",";A3;",";A4;",";A5) на ячейке, которую требуется отобразить результат.

отвечен Johnny 2011-02-03 11:39:22

источник

Сортировка списка значений в порядке возрастания или убывания довольно распространена в наших ежедневных заданиях Excel, но пробовали ли вы когда-нибудь сортировать числа, разделенные запятыми, в ячейке Excel, как показано ниже? В этой статье я расскажу, как быстро с этим справиться.
doc сортировать через запятую число 1

Сортировка значений, разделенных запятыми, с помощью функции Text to Columns

Сортировать значения, разделенные запятыми, с помощью Kutools for Excelхорошая идея3


Сортировка значений, разделенных запятыми, с помощью функции Text to Columns

Чтобы отсортировать значения, разделенные запятыми, в ячейке, вам нужно сначала разделить числа на отдельные ячейки по тексту в столбец, перенести их в список, а затем отсортировать.

1. Выберите ячейки, которые вы хотите разделить на ячейки, разделенные запятыми, и нажмите Данные > Текст в столбцы. И в шаг 1 мастера преобразования текста в столбцы, проверить разграниченный вариант. Смотрите скриншот:
doc сортировать через запятую число 2

2. Нажмите Download , чтобы перейти к шаг 2 мастера, и проверьте Запятая флажок и щелкните Download идти на шаг 3 мастера, выберите одну ячейку для вывода разделенных значений. Смотрите скриншот:
doc сортировать через запятую число 3

3. Нажмите Завершить, а значения, разделенные запятыми, разбиты на ячейки. Смотрите скриншот:
doc сортировать через запятую число 4

4. Выберите разделенные ячейки и нажмите Ctrl + C чтобы скопировать их, а затем выберите пустую ячейку, щелкните правой кнопкой мыши, чтобы отобразить контекстное меню, щелкните Специальная вставка > транспонировать. Смотрите скриншот:
doc сортировать через запятую число 5

Затем значения были перенесены, как показано на скриншоте ниже:
doc сортировать через запятую число 6

5. Выберите один столбец транспонированных значений, щелкните Данные вкладка и выберите нужный порядок сортировки в Сортировать и фильтровать группа. В появлении Предупреждение о сортировке диалоговое окно, проверьте Продолжить текущий выбор и нажмите OK кнопку.
doc сортировать через запятую число 7 doc сортировать через запятую число 8

И теперь выбранный столбец отсортирован в указанном порядке. Смотрите скриншот:
doc сортировать через запятую число 9.png

6. Затем повторите шаг 5, чтобы отсортировать транспонированные значения одно за другим. Смотрите скриншот:
doc сортировать через запятую число 1


  Сортировка значений, разделенных запятыми, с помощью Kutools for Exce

Если у вас есть Kutools for Excel, вам просто нужно разделить значения, разделенные запятыми, из одной ячейки на строки с помощью Разделить клетки утилита, а затем отсортируйте.

После установки Kutools for Excel, пожалуйста, сделайте, как показано ниже :( Бесплатная загрузка Kutools for Excel Сейчас!)

1. Выберите диапазон, который вы хотите разделить запятыми, и нажмите Кутулс > Слияние и разделение > Разделить клеткиИ в Разделить клетки диалог, проверьте Разделить на строки вариант в Тип раздел и перейдите, чтобы проверить Другое in Разделить на раздел и введите , в текстовое поле рядом. Смотрите скриншот:
doc сортировать через запятую число 10 doc kutools разделить ячейки 2

2. Нажмите Ok, появится диалоговое окно с напоминанием о необходимости выбора ячейки для размещения значений разделения, щелкните OK, а значения диапазона разбиты на строки запятыми. Смотрите скриншот:
doc сортировать через запятую число 11
doc сортировать через запятую число 12

3. Выберите один из разделенных столбцов, щелкните Данные > Сортировать от наименьшего к наибольшему or Сортировать от большего к меньшему как вам нужно, и, наконец, проверьте Продолжить текущий выбор вариант и нажмите OK кнопка в выскакивающем Предупреждение о сортировке диалог. Смотрите скриншот:
doc сортировать через запятую число 7 doc сортировать через запятую число 8

4. Повторите шаг 3 выше, чтобы отсортировать все разделенные столбцы один за другим.
doc сортировать через запятую число 1

Наконечник. Если вы хотите получить бесплатную пробную версию Разделить клетки Функция, пожалуйста, перейдите к бесплатной загрузке Kutools for Excel сначала, а затем перейдите к применению операции в соответствии с вышеуказанными шагами.


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Excel значок доллара в ячейке
  • Excel значение формулы в тест
  • Excel значок в ячейке с текстом
  • Excel значение формулы а не формулу в ячейке
  • Excel значки для условного форматирования

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии