Можно ли переместить столбец данных в одну ячейку с запятыми, разделяющими значения, которые были в столбце? Вид обратного текста в столбцах.
например,
1
2
3
4
5
до 1,2,3,4,5
в одной клетке.
Можно ли переместить столбец данных в одну ячейку с запятыми, разделяющими значения, которые были в столбце? Вид обратного текста в столбцах.
например,
1
2
3
4
5
до 1,2,3,4,5
в одной клетке.
Использование определенной пользователем функции будет намного более гибким, чем жесткое кодирование ячейка за ячейкой
используйте вашу новую формулу, такую как в снимке ячейки D6
=ConCat(A1:A5)
Вы можете использовать более сложные формулы, такие как в D7
=ConCat(A1:A5,A7:A24)
или D8, который 2D
=concat(A1:B5,A7:A24)
Function ConCat(ParamArray rng1()) As String
Dim X
Dim strOut As String
Dim strDelim As String
Dim rng As Range
Dim lngRow As Long
Dim lngCol As Long
Dim lngCnt As Long
strDelim = ", "
For lngCnt = LBound(rng1) To UBound(rng1)
If TypeOf rng1(lngCnt) Is Range Then
If rng1(lngCnt).Cells.Count > 1 Then
X = rng1(lngCnt).Value2
For lngRow = 1 To UBound(X, 1)
For lngCol = 1 To UBound(X, 2)
strOut = strOut & (strDelim & X(lngRow, lngCol))
Next
Next
Else
strOut = strOut & (strDelim & rng2.Value)
End If
End If
Next
ConCat = Right$(strOut, Len(strOut) - Len(strDelim))
End Function
Во-первых, сделать
=concatenate(A1,",")
в следующем столбце рядом с тем, у вас есть значения.
Во-вторых, скопируйте весь столбец и перейдите на другой лист, сделайте Paste Special-> Transpose.
Вы можете использовать функцию concatenate и переключаться между ячейками и строкой ","
:
=CONCATENATE(A1,",",A2,",",A3,",",A4,",",A5)
Удивительный ответ, Картикеян. Я не хотел тратить время на VB или даже убегать от Ctrl+H. Это было бы самым простым, и я делаю это.
Если это длинный столбец значений, вы можете использовать функцию CONCATENATE, но сделать это быстро немного сложнее. Предполагая, что ячейки были A1:A10, в B9 и B10 поместите эти формулы:
B9: = A9 & "," & B10
B10: = A10
Теперь скопируйте B9 и вставьте все ячейки ВВЕРХ в верхнюю часть столбца B.
В B1 у вас теперь будет полный результат. Скопировать> Специальная вставка> Значения.
Блокнот самый простой и быстрый. Из Excel я добавил столбец для бегущих чисел в столбце A. Мои данные находятся в столбце B. Затем скопировал столбец A & B в блокнот. Убрал лишние пробелы с помощью функции замены в блокноте. Скопировал из блокнота и вставил обратно, чтобы превзойти в единственной ячейке, в которую я хотел данные. Все сделано. Нет необходимости в VB!
Лучшее и простое решение:
Выберите диапазон столбцов, которые вы хотите скопировать в один столбец
Скопируйте диапазон ячеек (несколько столбцов)
Открыть Блокнот ++
Вставить выбранный диапазон ячеек
Нажмите Ctrl+H, замените \t на \n и нажмите заменить все
все несколько столбцов подпадают под один столбец
Теперь скопируйте то же самое и вставьте в Excel
Простое и эффективное решение для тех, кто не хочет тратить время на кодирование в VBA
Я обнаружил, что проще всего объединить список значений из столбца в одну ячейку, используя простую формулу конкатенации. 1) Вставьте новый столбец. 2) Вставьте объединенную формулу, используя столбец, который вы хотите объединить в качестве первого значения, разделитель (пробел, запятая и т.д.) В качестве второго значения и ячейку под ячейкой, в которую вы поместили формулу в качестве третьего значение. 3) Перетащите формулу вниз до конца данных в интересующем столбце. 4) Скопируйте и вставьте специальные значения во вновь созданный столбец, чтобы удалить формулы, и BOOM! ... все значения теперь находятся в верхней ячейке.
Например, следующая формула объединит все значения, перечисленные в столбце A в ячейке C3, с точкой с запятой, разделяющей их = CONCATENATE(A3, ";", C4)
Вот быстрый способ ... Вставьте столбец «,» рядом с каждым значением, используя заливку. Поместите формулу CONCATE в любое место с обоими столбцами в диапазоне. В результате получается одна ячейка, составной список с запятыми и пробелом после каждого.