Бывает, что необходимо какой-то список слов, фраз или других данных, расположенных списком в столбик преобразовать в последовательность строкой через запятую или наоборот из списка через запятую сформировать столбец, где каждая отделенная запятой фраза идет с новой строки. Мне, например, это бывает нужно при работе со списками ключевых слов в SEO-задачах или при работе с системами контекстной рекламы.
Есть, как минимум, три способа выполнить поставленную задачу:
- Преобразовать программе Notepad++
- Cтолбец в строку Excel через запятую
- Использовать Онлайн-скрипт
Содержание
- Преобразование в программе Notepad++ с помощью регулярных выражений
- Преобразование столбца в строку через запятую в Excel
- Столбик через запятую и обратно онлайн
- Список через запятую > в столбик
- Столбик > список через запятую
Преобразование в программе Notepad++ с помощью регулярных выражений
Эта программа известна практически всем, кто занимался редактированием сайтов или работал с кодом. Если у вас ее еще нет, советую скачать и поставить.
Вставляем в программу список для преобразования.
Для примера я взял набор фраз через запятую. Нажимаем комбинацию клавиш Ctrl+H (поиск с заменой), в открывшемся окне ставим метку Режим поиска — Расширенный, Найти: , (запятая и пробел), Заменить на: n Заменить все. Получаем список столбиком.
Если нужно из столбика сделать список через запятую, тогда то же самое, только Найти: rn и Заменить на: , (запятая и пробел).
Если что-то заменилось не так, как надо, делаем отмену Ctrl+Z и пробуем по-другому, например, ищем только n.
Преобразование столбца в строку через запятую в Excel
Используем формулу «лесенка».
Скачать готовый файл можно здесь: 4memo-ru-stolbik-zapyataya.xls
Запятую в самой первой ячейке можно заменить, на что-то другое, если нужно.
Формулу во втором столбце растягиваем вниз, насколько потребуется.
Если полученный список нужно вставить в другой лист эксель, то не забываем избавиться от формул, вставив предварительно данные в блокнот.
Столбик через запятую и обратно онлайн
Этот вариант подойдет для тех, кому нужно срочно, прямо на этой странице, решить задачу конвертации списка — за вас все сделает скрипт.
Список через запятую > в столбик
Разделитель-запятую можно заменить каким-нибудь другим, например, точкой с запятой, только про пробел не забудьте, если он вам нужен.
Столбик > список через запятую
Лично для меня из всех трех способов перестроения списка наиболее удобным является самый первый — через Нотпад, а вы выберите тот, который удобен вам.
Надеюсь, кому-то эта страница облегчит жизнь.
New
Пользователь
Сообщений: 4582
Регистрация: 06.01.2013
1. Выделяете мышкой столбец А (или просто ячейки с вашими данными мышкой выделите)
2. меню Данные — Текст по столбцам
3. в появившемся окне выбираете — с разделителями, Далее, мышкой выбираете разделитель «Запятая» — Готово
P.S. Правда access hash, состоящий у вас из набора цифр больше чем 15 символов (на первый взгляд их 19 чисел) — потеряется, а именно все числа после 15-го числа будут сконвертированы в 0. Если же вам нужны все числа в access hash, то можно придумать другой способ преобразования
Изменено: New — 14.11.2020 16:38:04
текст через запятую из одной ячейки перенести в столбец |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Если ячейка содержит текст, разделенный запятой или любым другим знаком, и вы хотите разбить их на несколько столбцов, вам следует следовать этому руководству. Эта статья поможет вам разделить текст, разделенный запятыми в Excel и Google Таблицах без использования стороннего программного обеспечения.
Предположим, у вас есть электронная таблица, содержащая полное имя некоторых людей, и вы хотите разделить имя и фамилию на два столбца. Вместо имен он может включать в себя что угодно, например, список продуктов, ваши услуги и цену или что-то еще. Если рядов мало, можно сделать это вручную. Проблема возникает, когда вам нужно сделать то же самое с сотнями столбцов в Microsoft Excel или Google Sheets. Чтобы избавиться от этой трудоемкой работы, вы можете ознакомиться с этим пошаговым руководством.
Чтобы разделить текст, разделенный запятыми, в Excel, выполните следующие действия:
- Откройте электронную таблицу и выберите все ячейки.
- Перейдите на вкладку «Данные».
- Нажмите на опцию Text to Columns.
- Используйте параметр с разделителями и выберите разделитель.
- Выберите ячейку, в которой вы хотите отобразить результат.
- Сохраните ваш файл.
Для начала вам нужно открыть электронную таблицу в Microsoft Excel и выбрать все ячейки, содержащие текст, разделенный командами. После этого перейдите в Данные вкладку и нажмите Текст в столбцы вариант.
У вас будет два варианта — С разделителями и Фиксированная ширина. Вам нужно выбрать С разделителями вариант и щелкните Следующий кнопка.
После этого выберите разделитель. Поскольку в вашей электронной таблице есть запятая, вам нужно выбрать ее из списка. Однако можно выбрать что-то еще, например табуляцию, точку с запятой, пробел или что-нибудь другое. Наконец, нажмите на Следующий кнопка.
Теперь вам нужно выбрать ячейку, которая будет первым столбцом.
Возвращаясь к руководству, вам нужно удалить default Пункт назначения значение и выберите ячейку, в которой вы хотите отобразить результат. Наконец, нажмите кнопку Заканчивать кнопка.
Какую бы ячейку или столбец вы ни выбрали, в следующей следующей будет последняя часть текста, разделенного запятыми.
Например, если-
- У вас есть такой текст — AA, BB
- Выберите B1 для AA
Часть BB будет сохранена в ячейке C1. Если исходный текст содержит две запятые, самая последняя часть будет отображаться в ячейке D1.
Теперь вы можете сразу увидеть результат.
Как разделить текст через запятую в Google Таблицах
В этом случае Google Таблицы не так умны, как Microsoft Excel. Хотя вы можете разделить все тексты через запятую, вы не можете сохранить исходный столбец. Если вас это устраивает, выполните следующие действия.
- Выделите все ячейки в вашей электронной таблице.
- Перейдите в Данные> Разделить тексты на столбцы.
- Если хотите, измените разделитель.
Сначала вам нужно выделить все ячейки, содержащие значения, разделенные запятыми. После этого разверните Данные меню и выберите Разделить текст на столбцы вариант.
По умолчанию он автоматически определяет разделитель или ограничитель. Если вы используете что-то уникальное или оно не выполняет свою работу безупречно, вы можете расширить Разделитель раскрывающийся список и выберите что-нибудь еще в соответствии с вашими требованиями.
Вот и все!
у меня есть задача создать простой лист 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 (тот, который вам нужно преобразовать в текст, разделенный
,
),
нажмите Ctrl —H (найти и заменить) - в поле» найти что » введите
^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)
источник
альтернативный подход заключается в том, чтобы вставить столбец 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
отвечен Hakan 2016-11-22 08:28:17
источник
использовать =CONCATENATE(A1;",";A2;",";A3;",";A4;",";A5)
на ячейке, которую требуется отобразить результат.
отвечен Johnny 2011-02-03 11:39:22
источник