New
Пользователь
Сообщений: 4581
Регистрация: 06.01.2013
1. Выделяете мышкой столбец А (или просто ячейки с вашими данными мышкой выделите)
2. меню Данные — Текст по столбцам
3. в появившемся окне выбираете — с разделителями, Далее, мышкой выбираете разделитель «Запятая» — Готово
P.S. Правда access hash, состоящий у вас из набора цифр больше чем 15 символов (на первый взгляд их 19 чисел) — потеряется, а именно все числа после 15-го числа будут сконвертированы в 0. Если же вам нужны все числа в access hash, то можно придумать другой способ преобразования
Изменено: New — 14.11.2020 16:38:04
Бывает, что необходимо какой-то список слов, фраз или других данных, расположенных списком в столбик преобразовать в последовательность строкой через запятую или наоборот из списка через запятую сформировать столбец, где каждая отделенная запятой фраза идет с новой строки. Мне, например, это бывает нужно при работе со списками ключевых слов в SEO-задачах или при работе с системами контекстной рекламы.
Есть, как минимум, три способа выполнить поставленную задачу:
- Преобразовать программе Notepad++
- Cтолбец в строку Excel через запятую
- Использовать Онлайн-скрипт
Содержание
- Преобразование в программе Notepad++ с помощью регулярных выражений
- Преобразование столбца в строку через запятую в Excel
- Столбик через запятую и обратно онлайн
- Список через запятую > в столбик
- Столбик > список через запятую
Преобразование в программе Notepad++ с помощью регулярных выражений
Эта программа известна практически всем, кто занимался редактированием сайтов или работал с кодом. Если у вас ее еще нет, советую скачать и поставить.
Вставляем в программу список для преобразования.
Для примера я взял набор фраз через запятую. Нажимаем комбинацию клавиш Ctrl+H (поиск с заменой), в открывшемся окне ставим метку Режим поиска — Расширенный, Найти: , (запятая и пробел), Заменить на: n Заменить все. Получаем список столбиком.
Если нужно из столбика сделать список через запятую, тогда то же самое, только Найти: rn и Заменить на: , (запятая и пробел).
Если что-то заменилось не так, как надо, делаем отмену Ctrl+Z и пробуем по-другому, например, ищем только n.
Преобразование столбца в строку через запятую в Excel
Используем формулу «лесенка».
Скачать готовый файл можно здесь: 4memo-ru-stolbik-zapyataya.xls
Запятую в самой первой ячейке можно заменить, на что-то другое, если нужно.
Формулу во втором столбце растягиваем вниз, насколько потребуется.
Если полученный список нужно вставить в другой лист эксель, то не забываем избавиться от формул, вставив предварительно данные в блокнот.
Столбик через запятую и обратно онлайн
Этот вариант подойдет для тех, кому нужно срочно, прямо на этой странице, решить задачу конвертации списка — за вас все сделает скрипт.
Список через запятую > в столбик
Разделитель-запятую можно заменить каким-нибудь другим, например, точкой с запятой, только про пробел не забудьте, если он вам нужен.
Столбик > список через запятую
Лично для меня из всех трех способов перестроения списка наиболее удобным является самый первый — через Нотпад, а вы выберите тот, который удобен вам.
Надеюсь, кому-то эта страница облегчит жизнь.
Сортировка списка значений в порядке возрастания или убывания довольно распространена в наших ежедневных заданиях Excel, но пробовали ли вы когда-нибудь сортировать числа, разделенные запятыми, в ячейке Excel, как показано ниже? В этой статье я расскажу, как быстро с этим справиться.
Сортировка значений, разделенных запятыми, с помощью функции Text to Columns
Сортировать значения, разделенные запятыми, с помощью Kutools for Excel
Сортировка значений, разделенных запятыми, с помощью функции Text to Columns
Чтобы отсортировать значения, разделенные запятыми, в ячейке, вам нужно сначала разделить числа на отдельные ячейки по тексту в столбец, перенести их в список, а затем отсортировать.
1. Выберите ячейки, которые вы хотите разделить на ячейки, разделенные запятыми, и нажмите Данные > Текст в столбцы. И в шаг 1 мастера преобразования текста в столбцы, проверить разграниченный вариант. Смотрите скриншот:
2. Нажмите Download , чтобы перейти к шаг 2 мастера, и проверьте Запятая флажок и щелкните Download идти на шаг 3 мастера, выберите одну ячейку для вывода разделенных значений. Смотрите скриншот:
3. Нажмите Завершить, а значения, разделенные запятыми, разбиты на ячейки. Смотрите скриншот:
4. Выберите разделенные ячейки и нажмите Ctrl + C чтобы скопировать их, а затем выберите пустую ячейку, щелкните правой кнопкой мыши, чтобы отобразить контекстное меню, щелкните Специальная вставка > транспонировать. Смотрите скриншот:
Затем значения были перенесены, как показано на скриншоте ниже:
5. Выберите один столбец транспонированных значений, щелкните Данные вкладка и выберите нужный порядок сортировки в Сортировать и фильтровать группа. В появлении Предупреждение о сортировке диалоговое окно, проверьте Продолжить текущий выбор и нажмите OK кнопку.
И теперь выбранный столбец отсортирован в указанном порядке. Смотрите скриншот:
6. Затем повторите шаг 5, чтобы отсортировать транспонированные значения одно за другим. Смотрите скриншот:
Сортировка значений, разделенных запятыми, с помощью Kutools for Exce
Если у вас есть Kutools for Excel, вам просто нужно разделить значения, разделенные запятыми, из одной ячейки на строки с помощью Разделить клетки утилита, а затем отсортируйте.
После установки Kutools for Excel, пожалуйста, сделайте, как показано ниже Бесплатная загрузка Kutools for Excel Сейчас!)
1. Выберите диапазон, который вы хотите разделить запятыми, и нажмите Кутулс > Слияние и разделение > Разделить клеткиИ в Разделить клетки диалог, проверьте Разделить на строки вариант в Тип раздел и перейдите, чтобы проверить Другое in Разделить на раздел и введите , в текстовое поле рядом. Смотрите скриншот:
2. Нажмите Ok, появится диалоговое окно с напоминанием о необходимости выбора ячейки для размещения значений разделения, щелкните OK, а значения диапазона разбиты на строки запятыми. Смотрите скриншот:
3. Выберите один из разделенных столбцов, щелкните Данные > Сортировать от наименьшего к наибольшему or Сортировать от большего к меньшему как вам нужно, и, наконец, проверьте Продолжить текущий выбор вариант и нажмите OK кнопка в выскакивающем Предупреждение о сортировке диалог. Смотрите скриншот:
4. Повторите шаг 3 выше, чтобы отсортировать все разделенные столбцы один за другим.
Наконечник. Если вы хотите получить бесплатную пробную версию Разделить клетки Функция, пожалуйста, перейдите к бесплатной загрузке Kutools for Excel сначала, а затем перейдите к применению операции в соответствии с вышеуказанными шагами.
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
текст через запятую из одной ячейки перенести в столбец |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
У меня есть задача создания простого листа Excel, который занимает неопределенное количество строк в столбце A, например:
1234
123461
123151
11321
И сделайте их в списке через запятую в другой ячейке, которую пользователь может легко скопировать и вставить в другую программу, например так:
1234,123461,123151,11321
Какой самый простой способ сделать это?
Предполагая, что ваши данные начинаются с A1, я бы поместил в столбец B следующее:
B1:
=A1
БИ 2:
=B1&","&A2
Затем вы можете вставить столбец B2 вниз по всему столбцу. Последняя ячейка в столбце B должна теперь быть разделенным запятыми списком столбца A.
- Скопируйте столбец в Excel
- Открытое слово
- «Специальная вставка» как только текст
- Выберите данные в Word (те, которые нужно преобразовать в текст, разделенный
,
), нажмите Ctrl — H (Найти и заменить) - В поле «Найти что» введите
^p
- В «Заменить» коробчатого
,
- Выберите «Заменить все»
ответ дан Michael Joseph681
Если у вас Office 365 Excel, вы можете использовать TEXTJOIN():
=TEXTJOIN(",",TRUE,A:A)
ответ дан Scott Craner12k
Я на самом деле только что создал модуль в 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)
и это дает мне список, разделенный запятыми.
Альтернативный подход заключается в вставке столбца Excel в этот инструмент в браузере:
convert.town/column-to-comma-separated-list
Он преобразует столбец текста в разделенный запятыми список.
Так как пользователь все равно копирует и вставляет в другую программу, это может быть для него таким же простым.
Вы могли бы сделать что-то вроде этого. Если вы не говорите об огромной электронной таблице, это будет хорошо.
- 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, но я не знаю, как в данный момент, и мне нужно вернуться к работе.
Используйте vi или vim, чтобы просто поставить запятую в конце каждой строки:
%s/$/,/
Чтобы объяснить эту команду:
%
означает выполнить действие (т.е. найти и заменить) для всех строкs
указывает на замену/
разделяет аргументы (т.е.s/find/replace/options
)$
представляет конец строки,
Является текстом замены в этом случае
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
Вы можете использовать руководство How-To Geek по превращению строки в столбец и просто перевернуть его. Затем экспортируйте данные в формате csv (в формате с разделителями-запятыми), и у вас будет список, разделенный запятыми в виде открытого текста! Вы можете скопировать из блокнота и положить его в Excel, если хотите. Кроме того, если вам нужен пробел после запятой, вы можете воспользоваться функцией поиска и замены, заменив «,» на «,». Надеюсь, это поможет!
Я улучшил подпрограмму generatecsv() для обработки листа Excel, который содержит несколько списков с пустыми строками, отделяющих заголовки каждого списка и списки от их заголовков. пример
list title 1
item 1
item 2
list title 2
item 1
item 2
и объединяет их конечно в несколько строк, по 1 на список.
По этой причине я попросил клиента прислать мне несколько ключевых слов в формате списка для своего веб-сайта в зависимости от предмета, мне нужен был способ, чтобы эти ключевые слова легко помещались на веб-страницы. Таким образом, изменив подпрограмму и придумав следующее, я также изменил имена переменных на значимые имена:
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 не сможет вставить запятую между значениями.
Один из самых простых способов — использовать веб-приложение zamazin.co для таких задач, разделяющих запятые. Просто заполните данные столбца и нажмите кнопку конвертации, чтобы создать список через запятую. Вы даже можете использовать некоторые другие настройки для улучшения желаемого результата.
http://zamazin.co/comma-separator-tool
Используйте =CONCATENATE(A1;",";A2;",";A3;",";A4;",";A5)
в ячейке, в которой вы хотите отобразить результат.
Распределить числа через запятую в ячейки
31.05.2015, 20:07. Показов 14814. Ответов 6
Метки нет (Все метки)
Есть массив чисел через запятую и пробел. Например 1, 2, 4, 55, 896, 345, 39835, 345. Нужно их вставить в файл exel и получить один столбец чисел (1, 2, 4, 55, 896, 345, 39835, 345) в каждой ячейке которого содержится только одно число.
Буду благодарен, если подскажете как это реализовать в MS Office Excel или другом аналогичном софте (например, libre office).
Заранее спасибо!
0
Цитата: sergo44441 от 09.09.2010, 22:08
попробуйте мой вариант макроса
Спасибо за желание помочь! (+1)
На самом деле, это тот самый способ, с которого я и сам начинал — в смысле, через Instr и Mid. Вот так вот я делал:
Счётчик = 1
Do While Счётчик <= ВсегоСтрокВтаблице
If Счётчик Mod 200 = 0 Then DoEvents
ProgressBar1.Value = Счётчик
With Sheets("Обработка")
КопияНачальнойСтроки = .Range("A" & Счётчик)
ПозицияПервойЗапятой = InStr(1, КопияНачальнойСтроки, ",")
ПозицияВторойЗапятой = InStr(ПозицияПервойЗапятой + 1, _
КопияНачальнойСтроки, ",")
ПозицияТретьейЗапятой = InStr(ПозицияВторойЗапятой + 1, _
КопияНачальнойСтроки, ",")
ПозицияЧетвёртойЗапятой = InStr(ПозицияТретьейЗапятой + 1, _
КопияНачальнойСтроки, ",")
ПозицияПятойЗапятой = InStr(ПозицияЧетвёртойЗапятой + 1, _
КопияНачальнойСтроки, ",")
ПозицияШестойЗапятой = InStr(ПозицияПятойЗапятой + 1, _
КопияНачальнойСтроки, ",")
ПозицияСедьмойЗапятой = InStr(ПозицияШестойЗапятой + 1, _
КопияНачальнойСтроки, ",")
ПозицияВосьмойЗапятой = InStr(ПозицияСедьмойЗапятой + 1, _
КопияНачальнойСтроки, ",")
.Range("A" & Счётчик) = _
Mid(КопияНачальнойСтроки, 1, ПозицияПервойЗапятой - 1)
.Range("B" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияПервойЗапятой + 1, _
ПозицияВторойЗапятой - ПозицияПервойЗапятой - 1)
.Range("C" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияВторойЗапятой + 1, _
ПозицияТретьейЗапятой - ПозицияВторойЗапятой - 1)
.Range("D" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияТретьейЗапятой + 1, _
ПозицияЧетвёртойЗапятой - ПозицияТретьейЗапятой - 1)
.Range("E" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияЧетвёртойЗапятой + 1, _
ПозицияПятойЗапятой - ПозицияЧетвёртойЗапятой - 1)
.Range("F" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияПятойЗапятой + 1, _
ПозицияШестойЗапятой - ПозицияПятойЗапятой - 1)
.Range("G" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияШестойЗапятой + 1, _
ПозицияСедьмойЗапятой - ПозицияШестойЗапятой - 1)
.Range("H" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияСедьмойЗапятой + 1, _
ПозицияВосьмойЗапятой - ПозицияСедьмойЗапятой - 1)
.Range("I" & Счётчик) = _
Mid(КопияНачальнойСтроки, ПозицияВосьмойЗапятой + 1)
End With
Счётчик = Счётчик + 1
Loop
Получалось очень долго. А чтобы не было совсем уж тоскливо, даже ПрогрессБары стал применять А потом вспомнил, что мы живём в 21-ом веке, стал копаться в справочной системе и «надыбал»
метод PasteSpecial, который почему-то вставляет данные то сразу «разбросанными» по ячейкам, то «одним куском» в столбец «A». Отчего зависит такая ощутимая разница в работе этого метода, я понять, увы, не смог.
И ещё нашёл метод TextToColumns, который вроде бы для этого и предназначен. Но эксперименты с ним особым успехом тоже не увенчались. Потому-то и решил прибегнуть к помощи знатоков.
Может кто-нибудь подскажет, как следует правильно использовать эти методы для решения моей задачи или посоветует ещё какой-нибудь способ?
Сортировка списка значений в порядке возрастания или убывания довольно часто встречается в наших ежедневных заданиях Excel, но пробовали ли вы когда-нибудь сортировать числа, разделенные запятыми, в ячейке Excel, как показано на скриншоте ниже? В этой статье я расскажу о приемах, которые помогут быстро с этим справиться.
Сортировка значений, разделенных запятыми, с помощью функции “Текст в столбцы”
Сортировка значений, разделенных запятыми, с помощью Kutools for Excel
Содержание
- Сортировка значений, разделенных запятыми, с помощью функции «Текст в столбцы»
- Сортировка значений, разделенных запятыми, с помощью Kutools for Exce
- Сортировка значений, разделенных запятыми
Сортировка значений, разделенных запятыми, с помощью функции «Текст в столбцы»
Чтобы отсортировать значения, разделенные запятыми в ячейке, необходимо сначала разделить числа на отдельные ячейки по тексту в столбец, перенести их в список, а затем отсортируйте.
1. Выделите ячейки, которые нужно разделить на ячейки, запятыми, и нажмите Данные > Текст в столбцы . И на шаге 1 мастера преобразования текста в столбцы установите флажок с разделителями . См. Снимок экрана:
2. Нажмите Далее , чтобы перейти к шагу 2 мастера , установите флажок Comma и нажмите Далее , чтобы перейти к шагу 3 мастера , выберите одну ячейку для вывода значений разделения. См. Снимок экрана:
3. Нажмите Готово , и значения, разделенные запятыми, будут разделены на ячейки. См. Снимок экрана:
4. Выделите разделенные ячейки и нажмите Ctrl + C , чтобы скопировать их, затем выберите пустую ячейку, щелкните правой кнопкой мыши, чтобы отобразить контекстное меню, нажмите Специальная вставка . > Транспонировать . См. Снимок экрана:
Затем значения были перенесены, как показано ниже:
5. Выберите один столбец транспонированных значений, щелкните вкладку Данные и выберите нужный порядок сортировки в группе Сортировка и фильтр . Во всплывающем диалоговом окне Предупреждение о сортировке установите флажок Продолжить с текущим выбором и нажмите кнопку ОК .
И теперь выбранный столбец отсортирован в указанном порядке. См. Снимок экрана:
6. Затем повторите шаг 5, чтобы отсортировать транспонированные значения одно за другим. См. Снимок экрана:
Сортировка значений, разделенных запятыми, с помощью Kutools for Exce
Если у вас есть Kutools for Excel , вам просто нужно разделить значения, разделенные запятыми, из одной ячейки на строки с помощью утилиты Split Cells , а затем отсортировать .
Kutools for Excel , с более чем 300 удобными функциями, упрощает вашу работу. |
Бесплатная загрузка |
После установки Kutools for Excel, сделайте следующее: ( Скачать бесплатно Kutools for Excel Now!)
1. Выберите диапазон, который вы хотите разделить запятыми, и нажмите Kutools > Объединить и разделить > Разделить ячейки и в диалоговом окне Разделить ячейки установите флажок Разделить на строки . в разделе Тип и выберите Другое в разделе Разбить по и введите в текстовое поле рядом. См. Снимок экрана:
2. Нажмите Ok , появится диалоговое окно с напоминанием о выборе ячейки для размещения разделенных значений, нажмите OK , и значения диапазона будут разделены на строки. запятыми. См. Снимок экрана:
3. Выберите один из разделенных столбцов, нажмите Данные > Сортировать от наименьшего к наибольшему или Сортировать от наибольшего к наименьшему , как вам нужно, и наконец, отметьте параметр Продолжить с текущим выбором и нажмите кнопку OK во всплывающем диалоговом окне Предупреждение о сортировке . См. Снимок экрана:
4. Повторите шаг 3 выше, чтобы отсортировать все разделенные столбцы один за другим.
Совет. Если вы хотите получить бесплатную пробную версию функции Split Cells , сначала перейдите к бесплатной загрузке Kutools for Excel . , а затем примените операцию в соответствии с указанными выше шагами.