Hàm TOROW trong Excel để chuyển đổi phạm vi hoặc mảng thành hàng

  • Chia Sẻ Cái Này
Michael Brown

Một cách nhanh chóng để biến một dải ô thành một hàng với sự trợ giúp của hàm TOROW .

Microsoft Excel 365 đã giới thiệu một số hàm mới để thực hiện các thao tác khác nhau với mảng. Với TOROW, bạn có thể thực hiện chuyển đổi từ phạm vi sang hàng một cách nhanh chóng. Dưới đây là danh sách các tác vụ mà hàm mới này có thể thực hiện:

    Hàm TOROW trong Excel

    Hàm TOROW trong Excel được sử dụng để chuyển đổi một mảng hoặc phạm vi ô thành một hàng.

    Hàm có tổng cộng ba đối số, trong đó chỉ có đối số đầu tiên là bắt buộc.

    TOROW(array, [ignore], [scan_by_column])

    Trong đó:

    Mảng (bắt buộc) - một mảng hoặc phạm vi để chuyển đổi thành một hàng.

    Bỏ qua (tùy chọn) - xác định có nên bỏ qua khoảng trống hoặc/và lỗi. Có thể nhận một trong các giá trị sau:

    • 0 hoặc bỏ qua (mặc định) - giữ tất cả các giá trị
    • 1 - bỏ qua khoảng trống
    • 2 - bỏ qua lỗi
    • 3 - bỏ qua khoảng trống và lỗi

    Quét_theo_cột (tùy chọn) - xác định cách quét mảng:

    • SAI hoặc bỏ qua (mặc định) - quét mảng theo chiều ngang theo hàng.
    • TRUE - quét mảng theo chiều dọc theo cột.

    Mẹo:

    • Để chuyển đổi mảng thành một cột duy nhất, hãy sử dụng hàm TOCOL.
    • Để tạo trước quá trình chuyển đổi hàng thành mảng ngược lại, hãy sử dụng hàm WRAPCOLS để ngắt dòng thành các cột hoặc hàm WRAPROWS để ngắt dòngmảng thành hàng.
    • Để biến hàng thành cột, hãy sử dụng hàm TRANSPOSE.

    Tính khả dụng của TOROW

    TOROW là một hàm mới chỉ được hỗ trợ trong Excel cho Microsoft 365 (dành cho Windows và Mac) và Excel cho web.

    Công thức TOROW cơ bản trong Excel

    Để thực hiện chuyển đổi phạm vi thành hàng đơn giản, hãy sử dụng công thức TOROW ở dạng cơ bản của nó. Đối với điều này, bạn chỉ cần xác định đối số đầu tiên ( mảng ).

    Ví dụ: để biến một mảng hai chiều bao gồm 3 cột và 3 hàng thành một hàng, công thức là:

    =TOROW(A3:C6)

    Bạn chỉ nhập công thức vào một ô (trong trường hợp của chúng tôi là A10) và công thức sẽ tự động tràn vào bao nhiêu ô cần thiết để chứa tất cả các kết quả. Theo thuật ngữ Excel, phạm vi đầu ra được bao quanh bởi một đường viền mỏng màu xanh lam được gọi là phạm vi tràn.

    Cách thức hoạt động của công thức này:

    Đầu tiên, một dải ô đã cung cấp được chuyển đổi thành một mảng hai chiều. Vui lòng lưu ý các cột được phân cách bằng dấu phẩy và các hàng được phân tách bằng dấu chấm phẩy:

    {"Apple","Banana","Cherry";1,2,3;4,5,6;7,8,9}

    Sau đó, hàm TOROW đọc mảng từ trái sang phải và chuyển đổi nó thành mảng ngang một chiều:

    {"Apple","Banana","Cherry",1,2,3,4,5,6,7,8,9}

    Kết quả chuyển đến ô A10, từ đó nó tràn sang ô bên cạnh bên phải.

    Chuyển đổi phạm vi thành hàng bỏ qua khoảng trống và lỗi

    Theo mặc định, hàm TOROW giữ tất cả các giá trị từ mảng nguồn, bao gồm các ô trống vàlỗi. Ở đầu ra, các giá trị 0 xuất hiện ở vị trí của các ô trống, điều này có thể khá khó hiểu.

    Để loại trừ các ô trống , hãy đặt đối số bỏ qua thành 1:

    =TOROW(A3:C5, 1)

    Để bỏ qua lỗi , hãy đặt đối số bỏ qua thành 2:

    =TOROW(A3:C5, 2)

    Để bỏ qua cả trống và lỗi , sử dụng 3 cho đối số bỏ qua :

    =TOROW(A3:C5, 3)

    Hình ảnh bên dưới hiển thị cả ba tình huống đang hoạt động:

    Đọc mảng theo chiều ngang hoặc chiều dọc

    Với hành vi mặc định, hàm TOROW xử lý mảng theo chiều ngang từ trái sang phải. Để quét các giá trị theo cột từ trên xuống dưới, bạn đặt đối số thứ 3 ( scan_by_column ) thành TRUE hoặc 1.

    Ví dụ: để đọc phạm vi nguồn theo hàng, công thức trong E3 là:

    =TOROW(A3:C5)

    Để quét phạm vi theo cột, công thức trong E8 là:

    =TOROW(A3:C5, ,TRUE)

    Trong cả hai trường hợp, mảng kết quả là cùng kích thước, nhưng các giá trị được sắp xếp theo thứ tự khác nhau.

    Hợp nhất nhiều phạm vi thành một hàng

    Để kết hợp nhiều phạm vi không liền kề thành một hàng, trước tiên bạn xếp chúng theo chiều ngang hoặc chiều dọc thành một mảng với sự trợ giúp của HSTACK hoặc VSTACK, tương ứng , sau đó sử dụng hàm TOROW để chuyển đổi mảng đã kết hợp thành một hàng.

    Tùy thuộc vào logic nghiệp vụ của bạn, một trong các công thức sau sẽ thực hiện tác vụ.

    Xếp các mảng theo chiều ngang và chuyển đổi theo hàng

    Với hàng đầu tiênphạm vi trong A3:C4 và phạm vi thứ hai trong A8:C9, công thức dưới đây sẽ xếp hai phạm vi theo chiều ngang thành một mảng duy nhất, sau đó chuyển đổi nó thành một hàng đọc các giá trị từ trái sang phải. Kết quả là E3 trong hình bên dưới.

    =TOROW(HSTACK(A3:C4, A8:C9))

    Xếp mảng theo chiều ngang và chuyển đổi theo cột

    Để đọc mảng xếp chồng theo chiều dọc từ trên xuống dưới, bạn đặt đối số thứ 3 của TOROW thành TRUE như minh họa trong E5 trong hình bên dưới:

    =TOROW(HSTACK(A3:C4, A8:C9), ,TRUE)

    Xếp các mảng theo chiều dọc và chuyển đổi theo hàng

    Để nối thêm từng mảng mảng tiếp theo xuống cuối mảng trước đó và đọc mảng kết hợp theo chiều ngang, công thức trong E12 là:

    =TOROW(VSTACK(A3:C4, A8:C9))

    Xếp mảng theo chiều dọc và chuyển đổi theo cột

    Để thêm từng mảng tiếp theo vào cuối mảng trước đó và quét mảng đã kết hợp theo chiều dọc, công thức là:

    =TOROW(VSTACK(A3:C4, A8:C9), ,TRUE)

    Để hiểu rõ hơn về logic, hãy quan sát thứ tự khác nhau của các giá trị trong các mảng kết quả:

    Trích xuất các giá trị duy nhất từ ​​một dải thành một hàng

    Bắt đầu với Microsoft Excel 2016, chúng tôi có một hàm tuyệt vời, có tên là ĐỘC ĐÁO, có thể dễ dàng lấy các giá trị duy nhất từ ​​một cột hoặc hàng. Tuy nhiên, nó không thể xử lý mảng nhiều cột. Để khắc phục giới hạn này, hãy sử dụng đồng thời các hàm UNIQUE và TOROW.

    Ví dụ: để trích xuất tất cả các giá trị khác nhau (khác biệt) từ phạm vi A2:C7 và đặt các kết quả vào một hàng, hàmcông thức là:

    =UNIQUE(TOROW(A2:C7), TRUE)

    Vì TOROW trả về mảng ngang một chiều, chúng tôi đặt đối số thứ 2 ( by_col ) của UNIQUE thành TRUE để so sánh các cột với nhau other.

    Trong trường hợp bạn muốn sắp xếp kết quả theo thứ tự bảng chữ cái, hãy bọc công thức trên trong hàm SORT:

    =SORT(UNIQUE(TOROW(A2:C7), TRUE), , ,TRUE )

    Giống như UNIQUE, by_col Đối số của SORT cũng được đặt thành TRUE.

    TOROW thay thế cho Excel 365 - 2010

    Trong các phiên bản Excel không có chức năng TOROW, bạn có thể chuyển đổi một phạm vi thành một hàng bằng cách sử dụng kết hợp một vài hàm khác nhau hoạt động trong Các phiên bản cũ hơn. Các giải pháp này phức tạp hơn nhưng chúng hoạt động hiệu quả.

    Để quét phạm vi theo chiều ngang, công thức chung là:

    INDEX( range , QUOTIENT(COLUMN (A1)-1, COLUMNS( range ))+1, MOD(COLUMN(A1)-1, COLUMNS( range ))+1)

    Để quét dải ô theo chiều dọc, công thức chung là :

    CHỈ MỤC( phạm vi , MOD(CỘT(A1)-1, CỘT( phạm vi ))+1, QUOTIENT(CỘT (A1)-1, CỘT( phạm vi ))+1)

    Đối với tập dữ liệu mẫu của chúng tôi ở A3:C5, các công thức có dạng sau:

    Để quét phạm vi theo hàng:

    =INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)

    Công thức này là một công thức thay thế cho hàm TOROW với đối số thứ 3 được đặt thành FALSE hoặc bị bỏ qua:

    =TOROW(A3:C5)

    Để quét phạm vi theo cột:

    =INDEX($A$3:$C$5, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)

    Công thức này tương đương với hàm TOROW với đối số thứ 3 được đặt thànhTRUE:

    =TOROW(A3:C5, ,TRUE)

    Xin lưu ý rằng không giống như hàm TOROW của mảng động, các công thức truyền thống này phải được nhập vào từng ô mà bạn muốn kết quả xuất hiện. Trong trường hợp của chúng tôi, công thức đầu tiên (theo hàng) chuyển đến E3 và được sao chép qua M3. Công thức thứ hai (theo cột) nằm trong E8 và được kéo qua M8.

    Để công thức sao chép chính xác, chúng tôi khóa phạm vi bằng cách sử dụng tham chiếu tuyệt đối ($A$3:$C$5). Một dải ô được đặt tên cũng sẽ làm được.

    Nếu bạn đã sao chép công thức vào nhiều ô hơn mức cần thiết, lỗi #REF! lỗi sẽ xuất hiện trong các ô "phụ". Để khắc phục điều này, hãy bọc công thức của bạn trong hàm IFERROR như sau:

    =IFERROR(INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1), "")

    Cách thức hoạt động của các công thức này

    Dưới đây là bảng phân tích chi tiết của công thức đầu tiên sắp xếp các giá trị theo hàng:

    =INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)

    Trọng tâm của công thức, chúng ta sử dụng hàm INDEX để lấy giá trị của một ô dựa trên vị trí tương đối của nó trong phạm vi.

    số hàng được tính theo công thức sau:

    QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1

    Ý tưởng là tạo ra một dãy số lặp lại chẳng hạn như 1,1 ,1,2,2,2,3,3,3, … trong đó mỗi số lặp lại số lần bằng số cột trong phạm vi nguồn. Và đây là cách chúng tôi thực hiện việc này:

    QUOTIENT trả về phần nguyên của một phép chia.

    Đối với tử số , chúng tôi sử dụng COLUMN(A1)-1, trả về một số sê-ri số từ 0 trong ô đầu tiên mà công thức được nhập vào n (tổng số giá trị trong phạm vitrừ 1) trong ô cuối cùng nơi công thức được nhập. Trong ví dụ này, chúng tôi có 0 trong E2 và 8 trong M3.

    Đối với mẫu số , chúng tôi sử dụng CỘT($A$3:$C$5)). Điều này trả về một số không đổi bằng với số cột trong phạm vi của bạn (trong trường hợp của chúng tôi là 3).

    Kết quả là hàm QUOTIENT trả về 0 trong 3 ô đầu tiên (E3:G3), mà chúng tôi thêm 1, do đó số hàng là 1.

    Đối với 3 ô tiếp theo (H3:J3), QUOTIENT trả về 1 và +1 trả về số hàng 2. Và cứ tiếp tục như vậy.

    Để tính số cột , bạn xây dựng một dãy số thích hợp bằng cách sử dụng hàm MOD:

    MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1

    Vì có 3 cột trong phạm vi của chúng ta nên dãy số phải như thế nào : 1,2,3,1,2,3,…

    Hàm MOD trả về phần dư sau khi chia.

    Trong E3, MOD(COLUMN(A1)-1, COLUMNS($ A$3:$C$5))+

    trở thành

    MOD(1-1, 3)+1)

    và trả về 1.

    In F3, MOD(COLUMN(B1)-1, COLUMNS($A$3:$C$5))+

    trở thành

    MOD(2-1, 3)+1)

    và trả về 2.

    Sau khi số hàng và cột được thiết lập, INDEX dễ dàng tìm nạp giá trị tại giao điểm của hàng và cột đó.

    Trong E3, INDEX($A$3 :$C$5, 1, 1) trả về một giá trị từ hàng đầu tiên và cột đầu tiên của phạm vi được tham chiếu, tức là từ ô A3.

    Trong F3, INDEX($A$3:$C$5, 1, 2) trả về một giá trị từ hàng thứ nhất và cột thứ 2, tức là từ ô B3.

    Và v.v.

    Công thức thứ hai quét dải ô theo cột, hoạt động trong mộtcách giống nhau. Điểm khác biệt là chúng tôi sử dụng MOD để tính số hàng và QUOTIENT để tính số cột.

    Hàm TOROW không hoạt động

    Nếu hàm TOROW dẫn đến lỗi, đó là rất có thể là một trong những lý do sau:

    #NAME? lỗi

    Với hầu hết các hàm Excel, lỗi #NAME? lỗi là một dấu hiệu rõ ràng rằng tên của chức năng bị sai chính tả. Với TOROW, điều đó cũng có thể có nghĩa là hàm này không có sẵn trong Excel của bạn. Nếu phiên bản Excel của bạn không phải là 365, hãy thử sử dụng phiên bản thay thế TOROW.

    Lỗi #NUM

    Lỗi #NUM cho biết mảng được trả về không thể vừa với một hàng. Điều này thường xảy ra nhất khi bạn tham chiếu toàn bộ cột và/hoặc hàng thay vì một phạm vi nhỏ hơn.

    Lỗi #SPILL

    Trong hầu hết các trường hợp, lỗi #SPILL cho biết rằng hàng ở đó bạn đã nhập công thức không có đủ ô trống để điền kết quả vào. Nếu các ô lân cận trống về mặt trực quan, hãy đảm bảo không có khoảng trắng hoặc các ký tự không in được khác trong đó. Để biết thêm thông tin, hãy xem Lỗi #SPILL nghĩa là gì trong Excel.

    Đó là cách bạn sử dụng hàm TOROW trong Excel để chuyển đổi một mảng hoặc phạm vi 2 chiều thành một hàng. Tôi cảm ơn bạn đã đọc và hy vọng sẽ gặp bạn trên blog của chúng tôi vào tuần tới!

    Sách bài tập thực hành để tải xuống

    Hàm TOROW trong Excel - ví dụ về công thức (tệp .xlsx)

    Michael Brown là một người đam mê công nghệ chuyên dụng với niềm đam mê đơn giản hóa các quy trình phức tạp bằng các công cụ phần mềm. Với hơn một thập kỷ kinh nghiệm trong ngành công nghệ, anh ấy đã trau dồi kỹ năng của mình trong Microsoft Excel và Outlook, cũng như Google Trang tính và Tài liệu. Blog của Michael dành để chia sẻ kiến ​​thức và chuyên môn của anh ấy với những người khác, cung cấp các mẹo và hướng dẫn dễ thực hiện để cải thiện năng suất và hiệu quả. Cho dù bạn là một chuyên gia dày dạn kinh nghiệm hay người mới bắt đầu, blog của Michael đều cung cấp những hiểu biết có giá trị và lời khuyên thiết thực để tận dụng tối đa những công cụ phần mềm thiết yếu này.