7

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

например,

1
2
3
4
5

до 1,2,3,4,5 в одной клетке.

9 ответов9

7

Использование определенной пользователем функции будет намного более гибким, чем жесткое кодирование ячейка за ячейкой

  • Нажмите & вместе, чтобы перейти к VBE
  • Вставить модуль
  • скопируйте и вставьте код ниже
  • Нажмите & вместе, чтобы вернуться в Excel

используйте вашу новую формулу, такую как в снимке ячейки 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
4
  • Во-первых, сделать

    =concatenate(A1,",")
    

    в следующем столбце рядом с тем, у вас есть значения.

  • Во-вторых, скопируйте весь столбец и перейдите на другой лист, сделайте Paste Special-> Transpose.

  • В-третьих, скопируйте только что полученное значение и откройте текстовый документ, затем выберите "Параметры вставки" -> выберите "A",
  • Наконец, скопируйте все в документе Word обратно в ячейку на листе Excel, вы получите все значения в одной ячейке
2

Вы можете использовать функцию concatenate и переключаться между ячейками и строкой ",":

=CONCATENATE(A1,",",A2,",",A3,",",A4,",",A5)
1

Удивительный ответ, Картикеян. Я не хотел тратить время на VB или даже убегать от Ctrl+H. Это было бы самым простым, и я делаю это.

  1. Вставьте новый ряд сверху (A).
  2. Чуть выше числа 1 (то есть на A1) введите символ равенства (=).
  3. Скопируйте / вставьте запятую (,) из B1 в B23 (не в B24).
  4. Выберите от А1 до В24, скопируйте / вставьте в Блокнот.
  5. В Блокноте нажмите (Выбрать все) Ctrl+A, нажмите (Копировать) Ctrl+C, затем щелкните внутри отдельной ячейки в Excel (F2), затем (Вставить) Ctrl+V.
1

Если это длинный столбец значений, вы можете использовать функцию CONCATENATE, но сделать это быстро немного сложнее. Предполагая, что ячейки были A1:A10, в B9 и B10 поместите эти формулы:

B9: = A9 & "," & B10

B10: = A10

Теперь скопируйте B9 и вставьте все ячейки ВВЕРХ в верхнюю часть столбца B.

В B1 у вас теперь будет полный результат. Скопировать> Специальная вставка> Значения.

1

Блокнот самый простой и быстрый. Из Excel я добавил столбец для бегущих чисел в столбце A. Мои данные находятся в столбце B. Затем скопировал столбец A & B в блокнот. Убрал лишние пробелы с помощью функции замены в блокноте. Скопировал из блокнота и вставил обратно, чтобы превзойти в единственной ячейке, в которую я хотел данные. Все сделано. Нет необходимости в VB!

0

Лучшее и простое решение:

Выберите диапазон столбцов, которые вы хотите скопировать в один столбец

Скопируйте диапазон ячеек (несколько столбцов)

Открыть Блокнот ++

Вставить выбранный диапазон ячеек

Нажмите Ctrl+H, замените \t на \n и нажмите заменить все

все несколько столбцов подпадают под один столбец

Теперь скопируйте то же самое и вставьте в Excel

Простое и эффективное решение для тех, кто не хочет тратить время на кодирование в VBA

0

Я обнаружил, что проще всего объединить список значений из столбца в одну ячейку, используя простую формулу конкатенации. 1) Вставьте новый столбец. 2) Вставьте объединенную формулу, используя столбец, который вы хотите объединить в качестве первого значения, разделитель (пробел, запятая и т.д.) В качестве второго значения и ячейку под ячейкой, в которую вы поместили формулу в качестве третьего значение. 3) Перетащите формулу вниз до конца данных в интересующем столбце. 4) Скопируйте и вставьте специальные значения во вновь созданный столбец, чтобы удалить формулы, и BOOM! ... все значения теперь находятся в верхней ячейке.

Например, следующая формула объединит все значения, перечисленные в столбце A в ячейке C3, с точкой с запятой, разделяющей их = CONCATENATE(A3, ";", C4)

-1

Вот быстрый способ ... Вставьте столбец «,» рядом с каждым значением, используя заливку. Поместите формулу CONCATE в любое место с обоими столбцами в диапазоне. В результате получается одна ячейка, составной список с запятыми и пробелом после каждого.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .