Перейти к основному содержанию

Как сложить столбцы слева направо в один столбец в Excel?

Предположим, что имеется несколько столбцов, задача состоит в том, чтобы сложить столбцы слева направо в один столбец, как показано ниже. Есть ли какие-нибудь уловки, кроме как вручную перемещать столбцы по одному в Excel?
столбцы стека документов слева направо 1

Сложите столбцы слева направо в один столбец с помощью VBA

Сложите столбцы слева направо в один столбец с помощью Kutools for Excel


Сложите столбцы слева направо в один столбец с помощью VBA

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

1. Нажмите Alt + F11 ключи, затем в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули для создания нового пустого модуля.

2. Скопируйте и вставьте приведенный ниже код в Модули.

VBA: стек столбцов в один

Sub StackColumns()
'UpdatebyExtendoffice20180814
Dim xSRg, xDRg As Range
Dim xDWS As Worksheet
Dim xIntDR, xIntDC, xI As Long
Dim xFNumR, xFNumC As Long
On Error GoTo Err1
Set xSRg = Application.InputBox("Select Columns:", "Kutools for Excel", xTxt, , , , , 8)
If xSRg Is Nothing Then
Err1:
    Application.ScreenUpdating = True
    Exit Sub
End If
Set xDRg = Application.InputBox("Select a cell to place result:", "Kutools for Excel", xTxt, , , , , 8)
If xDRg Is Nothing Then
    Exit Sub
End If
Application.ScreenUpdating = False
Set xDWS = xDRg.Worksheet
xIntDR = xDRg.Row
xIntDC = xDRg.Column
xI = 0
    For xFNumC = 1 To xSRg.Columns.Count
        For xFNumR = 1 To xSRg.Rows.Count
            Set xDRg = xDWS.Cells(xIntDR + xI, xIntDC)
            xDRg.Value = xSRg.Cells(xFNumR, xFNumC).Value
            xI = xI + 1
        Next xFNumR
    Next xFNumC
Application.ScreenUpdating = True
End Sub

столбцы стека документов слева направо 2

3. Нажмите F5 нажмите клавишу для запуска кода, появится диалоговое окно, в котором вы можете выбрать столбцы, которые вы объедините в один.
столбцы стека документов слева направо 3

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

5. Нажмите OK заканчивать. Теперь выбранные столбцы собраны в один столбец.
столбцы стека документов слева направо 5


Сложите столбцы слева направо в один столбец с помощью Kutools for Excel

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

Kutools for Excel, с более чем 300 удобные функции, облегчающие вашу работу. 

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

1. Выберите столбцы, которые хотите сложить, нажмите Кутулс > Диапазон > Transform Range.
столбцы стека документов слева направо 6

2. в Transform Range диалог, проверьте Range to single row флажок, щелкните Ok.
столбцы стека документов слева направо 7

3. В открывшемся диалоговом окне выберите ячейку для размещения результата, щелкните OK.
столбцы стека документов слева направо 8

Теперь столбцы преобразованы в одну строку.
столбцы стека документов слева направо 9

4. Выберите одну строку, нажмите Ctrl + C чтобы скопировать его, и выберите другую ячейку, которая поместит столбец стека, щелкните правой кнопкой мыши, чтобы выбрать Transpose(T) в контекстном меню.
столбцы стека документов слева направо 10

Теперь единственная строка была перенесена в столбец стека.
столбец стека документов слева направо 11

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

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

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

Описание


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

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Does anyone know how to replace/hardcode the columns (not bring up the message box for selection)?So, set the XSRg to be something like: Set xSRg = Range("A1").CurrentRegion.Select(which does not work because of type mismatch)thanks
This comment was minimized by the moderator on the site
I will be eternally grateful to you. Thank you so much!
This comment was minimized by the moderator on the site
A Word cheat to do the same:
- copy all your rows and lines in Excel
- paste without into a Word doc
- ctrl + h (find and replace)
- copy a tabulation space between two rows
- paste into search bar
- replace by tabs by line breaks "^l"

All your cells are now in column in your Word doc.
Copy paste them into Excel: done!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations