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

Как преобразовать матрицу в вектор или один столбец в Excel?

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

Преобразуйте матрицу ячеек в одну строку или столбец с формулами

Преобразование матрицы ячеек в одну строку или столбец с помощью Kutools for Excel


Следующие формулы могут помочь вам быстро преобразовать матрицу в одну строку или столбец. Пожалуйста, сделайте следующее:

Преобразование матрицы ячеек в один столбец

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

doc преобразовать матрицу в столбец 1

2. Затем введите следующие формулы:

(1.) Преобразуйте матрицу в один столбец на основе строки, это означает, что значения берутся из каждой строки, перемещаясь между ними, а затем вниз: = СМЕЩЕНИЕ (Матрица; СТРОКА ((СТРОКА () - СТРОКА ($ G $ 1)) / COLUMNS (Матрица)), MOD (ROW () - ROW ($ G $ 1), COLUMNS (Matrix)), 1,1)(матрица это имя диапазона, которое вы определили на шаге 1, и G1 это ячейка, в которую вы вводите эту формулу). Затем перетащите маркер заполнения к ячейкам, пока не отобразится 0, см. Снимок экрана:

doc преобразовать матрицу в столбец 2

(2.) Преобразуйте матрицу в один столбец на основе столбца, это означает, что значения берутся из столбцов, перемещаясь вниз на один столбец, а затем в правый столбец: = СМЕЩЕНИЕ (Матрица, МОД (СТРОКА () - СТРОКА ($ G $ 1), СТРОКА (Матрица)), СТРОКА ((СТРОКА () - СТРОКА ($ G $ 1)) / СТРОКА (Матрица)), 1,1) (матрица это имя диапазона, которое вы определили на шаге 1, и G1 это ячейка, в которую вы вводите эту формулу). Затем перетащите маркер заполнения к ячейкам, пока не отобразится 0, см. Снимок экрана:

doc преобразовать матрицу в столбец 3

Преобразуйте матрицу ячеек в одну строку

Чтобы преобразовать матрицу ячеек в одну строку, вы можете использовать следующие формулы:

(1.) Преобразование матрицы в одну строку на основе строки, это означает, что значения берутся из каждой строки слева направо в одной строке, а затем перемещаются вниз к следующей строке: = СМЕЩЕНИЕ (Матрица; ОТЧЕТ ((СТОЛБЕЦ () - СТОЛБЦА (7 долларов США)) / СТОЛБЦЫ (Матрица)), МОД ((СТОЛБЦА () - СТОЛБЦА (7 долларов США)), СТОЛБЦА (матрица)), 1,1 ) (матрица это имя диапазона, которое вы создали для своего диапазона данных, и A7 это ячейка, в которую вы вводите эту формулу). Затем перетащите маркер заполнения прямо к ячейкам, пока не отобразится 0, см. Снимок экрана:

doc преобразовать матрицу в столбец 4

(2.) Преобразуйте матрицу в одну строку на основе столбца, это означает, что значения берутся из каждого столбца, перемещаясь вниз на один столбец, а затем в правый столбец: = СМЕЩЕНИЕ (Матрица; MOD ((COLUMN () - COLUMN ($ A $ 7)), ROWS (Matrix)), TRUNC ((COLUMN () - COLUMN ($ A $ 7)) / (ROWS (Matrix))), 1,1 , XNUMX) (матрица это имя диапазона, которое вы создали для своего диапазона данных, и A7 это ячейка, в которую вы вводите эту формулу). Затем перетащите маркер заполнения прямо к ячейкам, пока не отобразится 0, см. Снимок экрана:

doc преобразовать матрицу в столбец 5


Если приведенные выше формулы слишком длинные для запоминания, я могу порекомендовать простой и мощный инструмент - Kutools for Excel, С его Диапазон преобразования утилита, вы можете быстро преобразовать несколько столбцов и строк в один столбец или строку по мере необходимости.

Kutools for Excel : с более чем 300 удобными надстройками Excel, бесплатно и без ограничений в течение 30 дней.

После установки Kutools for Excel, выполните следующие действия:

1. Выберите матрицу ячеек, которую вы хотите преобразовать.

2. Затем нажмите Кутулс > Диапазон > Диапазон преобразования, см. снимок экрана:

3. В Диапазон преобразования диалоговое окно, выберите Диапазон до одного столбца если вы хотите преобразовать матрицу в один столбец, или выберите Диапазон до одной строки если вы хотите преобразовать матрицу в одну строку, см. снимок экрана:

doc преобразовать матрицу в столбец 07

4. Затем нажмите OK кнопку, а в выскочившей Диапазон преобразования поле, выберите ячейку, в которую вы хотите поместить результат, см. снимок экрана:

doc преобразовать матрицу в столбец 08

5, Затем нажмите OK При нажатии кнопки выбранная матрица ячеек преобразована в одну строку или столбец.

Чтобы узнать больше об этой утилите Transform Range.

 Загрузите бесплатную пробную версию Kutools for Excel прямо сейчас!


Kutools for Excel: с более чем 300 удобными надстройками Excel, которые можно попробовать бесплатно без ограничений в течение 30 дней. Загрузите и бесплатную пробную версию прямо сейчас!

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

🤖 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 (7)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Thanks much! Stacking a 2D matrix of data as a 1D column -> That was cool! Solved my problem precisely. Though I had to tweak the formula to get it right (I think the row and col are interchanged)... But the inspiration was from this article. Simply superb! Thanks!
This comment was minimized by the moderator on the site
Fantastic explanation - thank you. This helped me save hours of time
This comment was minimized by the moderator on the site
I'd like to accomplish this same task but with a range that is not so neatly defined. I've got wholes in the data and my matrix is spaced out over my spreadsheet rather than in a neatly define A1:D4 style block. Any ideas on how I can accomplish this?
This comment was minimized by the moderator on the site
Hi, Kevin:

The following VBA code can help you to combine the cells from a range:

Sub a()
Dim xSRg As Range
Dim xDRg As Range
Dim I As Long
Dim J As Long
Dim K As Long
Dim xArr
On Error Resume Next
Set xSRg = Application.InputBox("Please select the data range:", "KuTools for Excel", Selection.Address, , , , , 8)
If xSRg Is Nothing Then Exit Sub
Set xDRg = Application.InputBox("Select an output cell:)", "KuTools for Excel", , , , , , 8)
If xDRg Is Nothing Then Exit Sub
xArr = xSRg
K = 0
For I = 1 To UBound(xArr, 1)
For J = 1 To UBound(xArr, 2)
If xArr(I, J) <> "" Then
xDRg.Offset(K, 0).Value = xArr(I, J)
K = K + 1
End If
Next
Next
End Sub

Please try it, Hope it can help you!
This comment was minimized by the moderator on the site
Thank you!!!!
This comment was minimized by the moderator on the site
I had the same issue, put a filter on that column, and anything that has 0, filter out.
This comment was minimized by the moderator on the site
This is so useful! The formula to convert a matrix to single column based on column was exactly what I needed. Thank you!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations