Bỏ qua nội dung chính

Làm thế nào để chuyển đổi ma trận thành vectơ hoặc cột đơn trong Excel?

Bạn đã bao giờ cố gắng chuyển đổi ma trận ô thành một hàng hoặc cột trong Excel chưa? Có thể, bạn có thể sao chép một hàng hoặc một cột và dán chúng lần lượt vào một vectơ duy nhất, nhưng, điều này sẽ tốn thời gian nếu có nhiều hàng và cột. Trong bài viết này, tôi sẽ nói về một số phương pháp thú vị và hy vọng chúng sẽ giúp ích cho bạn.

Chuyển đổi ma trận ô thành hàng hoặc cột đơn với công thức

Chuyển đổi ma trận ô thành hàng hoặc cột đơn với Kutools cho Excel


Các công thức sau đây có thể giúp bạn nhanh chóng chuyển đổi ma trận thành một hàng hoặc cột. Vui lòng làm như sau:

Chuyển đổi ma trận ô thành một cột duy nhất

1. Trước hết, bạn nên xác định một tên phạm vi cho dữ liệu ma trận. Chọn phạm vi ô và nhập tên phạm vi vào Hộp tên bên cạnh thanh công thức, sau đó nhấn đăng ký hạng mục thi Chìa khóa. Trong trường hợp này, tôi nhập "Matrix" làm tên đã xác định, xem ảnh chụp màn hình:

doc chuyển ma trận thành cột 1

2. Sau đó nhập các công thức sau:

(1.) Chuyển ma trận thành cột đơn dựa trên hàng, điều đó có nghĩa là các giá trị được lấy từ mỗi hàng, di chuyển qua rồi xuống: = OFFSET (Ma trận, TRUNC ((ROW () - ROW ($ G $ 1)) / COLUMNS (Ma trận)), MOD (ROW () - ROW ($ G $ 1), COLUMNS (Ma trận)), 1,1)(Matrix là tên dải ô bạn đã xác định ở bước 1 và G1 là ô bạn nhập công thức này). Sau đó kéo chốt điền vào các ô cho đến khi số 0 được hiển thị, xem ảnh chụp màn hình:

doc chuyển ma trận thành cột 2

(2.) Chuyển ma trận thành cột đơn dựa trên cột, điều đó có nghĩa là các giá trị được lấy từ các cột, di chuyển xuống một cột và sau đó chuyển sang cột bên phải: = OFFSET (Ma trận, MOD (ROW () - ROW ($ G $ 1), ROWS (Ma trận)), TRUNC ((ROW () - ROW ($ G $ 1)) / ROWS (Ma trận)), 1,1) (Matrix là tên dải ô bạn đã xác định ở bước 1 và G1 là ô bạn nhập công thức này). Sau đó kéo chốt điền vào các ô cho đến khi số 0 được hiển thị, xem ảnh chụp màn hình:

doc chuyển ma trận thành cột 3

Chuyển đổi ma trận ô thành một hàng

Để chuyển đổi ma trận ô thành một hàng, bạn có thể sử dụng các công thức sau:

(1.) Chuyển đổi ma trận thành một hàng dựa trên hàng, có nghĩa là các giá trị được lấy từ mỗi hàng từ trái sang phải trên một hàng và sau đó chuyển xuống hàng tiếp theo: = OFFSET (Ma trận, TRUNC ((COLUMN () - COLUMN ($ A $ 7)) / COLUMNS (Matrix)), MOD ((COLUMN () - COLUMN ($ A $ 7)), COLUMNS (Ma trận)), 1,1 ) (Matrix là tên phạm vi bạn đã tạo cho phạm vi dữ liệu của mình và A7 là ô bạn nhập công thức này). Sau đó kéo tay cầm điền sang phải các ô cho đến khi số 0 được hiển thị, xem ảnh chụp màn hình:

doc chuyển ma trận thành cột 4

(2.) Chuyển ma trận thành một hàng dựa trên cột, điều đó có nghĩa là các giá trị được lấy từ mỗi cột, di chuyển xuống một cột và sau đó chuyển sang cột bên phải: = OFFSET (Ma trận, MOD ((COLUMN () - COLUMN ($ A $ 7)), ROWS (Ma trận)), TRUNC ((COLUMN () - COLUMN ($ A $ 7)) / (ROWS (Ma trận))), 1,1 , XNUMX) (Matrix là tên phạm vi bạn đã tạo cho phạm vi dữ liệu của mình và A7 là ô bạn nhập công thức này). Sau đó kéo tay cầm điền sang phải các ô cho đến khi số 0 được hiển thị, xem ảnh chụp màn hình:

doc chuyển ma trận thành cột 5


Nếu các công thức trên quá dài để nhớ, thì đây, tôi có thể giới thiệu một công cụ dễ dàng và mạnh mẽ - Kutools cho Excel, Với khả Phạm vi chuyển đổi tiện ích, bạn có thể nhanh chóng chuyển đổi nhiều cột và hàng thành một cột hoặc hàng khi bạn cần.

Kutools cho Excel : với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn trong 30 ngày.

Sau khi cài đặt Kutools cho Excel, vui lòng thực hiện theo các bước sau:

1. Chọn ma trận ô mà bạn muốn chuyển đổi.

2. Sau đó nhấn vào Kutools > Phạm vi > Phạm vi chuyển đổi, xem ảnh chụp màn hình:

3. Trong Phạm vi chuyển đổi hộp thoại, chọn Phạm vi thành một cột nếu bạn muốn chuyển đổi ma trận thành một cột duy nhất, hoặc chọn Phạm vi thành hàng đơn nếu bạn muốn chuyển đổi ma trận thành một hàng, hãy xem ảnh chụp màn hình:

doc chuyển ma trận thành cột 07

4. Sau đó nhấn vào OK và trong cửa sổ bật ra Phạm vi chuyển đổi , chọn một ô mà bạn muốn đặt kết quả, xem ảnh chụp màn hình:

doc chuyển ma trận thành cột 08

5. Và sau đó nhấp vào OK , ma trận ô chọn của bạn đã được chuyển đổi thành một hàng hoặc cột.

Để biết thêm về tiện ích Transform Range này.

 Tải xuống và dùng thử miễn phí Kutools cho Excel ngay!


Kutools cho Excel: với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn trong 30 ngày. Tải xuống và dùng thử miễn phí ngay!

Công cụ năng suất văn phòng tốt nhất

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

Mô tả


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
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