Excel TOCOL berfungsi untuk mengubah rentang menjadi satu kolom

  • Bagikan Ini
Michael Brown

Cara mudah untuk mengubah array atau range menjadi kolom dengan fungsi TOCOL.

Kemampuan untuk mengubah urutan data dari kolom ke baris dan sebaliknya telah ada di Excel cukup lama. Tetapi mengubah rentang sel menjadi satu kolom adalah tugas yang sulit untuk dipecahkan. Sekarang, itu akhirnya berubah. Microsoft telah memperkenalkan fungsi baru, yang disebut TOCOL, yang dapat melakukan transformasi array-ke-kolom dalam sekejap. Di bawah ini adalah daftar tugas yang dapat diselesaikan dengan mudah oleh fungsi baru ini.

    Fungsi TOCOL Excel

    Fungsi TOCOL di Excel mengubah larik atau rentang sel menjadi satu kolom.

    Fungsi ini mengambil tiga argumen, tetapi hanya yang pertama yang diperlukan.

    TOCOL(array, [abaikan], [scan_by_column])

    Di mana:

    Larik (wajib) - larik atau rentang untuk diubah menjadi kolom.

    Abaikan (opsional) - mendefinisikan apakah akan mengabaikan kosong atau/dan kesalahan. Bisa salah satu dari nilai-nilai ini:

    • 0 atau dihilangkan (default) - simpan semua nilai
    • 1 - abaikan kekosongan
    • 2 - abaikan kesalahan
    • 3 - abaikan kekosongan dan kesalahan

    Scan_by_column (opsional) - menentukan apakah akan memindai larik secara horizontal atau vertikal:

    • FALSE atau dihilangkan (default) - memindai larik per baris dari kiri ke kanan.
    • TRUE - memindai larik berdasarkan kolom dari atas ke bawah.

    Tips:

    • Untuk mengubah larik menjadi satu baris, gunakan fungsi TOROW.
    • Untuk melakukan transformasi kolom-ke-larik yang berlawanan, gunakan fungsi WRAPCOLS untuk membungkus berdasarkan kolom atau fungsi WRAPROWS untuk membungkus berdasarkan baris.
    • Untuk mengubah urutan larik dari horizontal ke vertikal atau sebaliknya, yaitu mengubah baris ke kolom, gunakan fungsi TRANSPOSE.

    Ketersediaan TOCOL

    TOCOL adalah fungsi baru, yang didukung di Excel untuk Microsoft 365 (untuk Windows dan Mac) dan Excel untuk web.

    Rumus dasar TOCOL untuk mengubah rentang menjadi kolom

    Rumus TOCOL dalam bentuknya yang paling sederhana hanya memerlukan satu argumen - array Misalnya, untuk menempatkan larik dua dimensi yang terdiri dari 3 kolom dan 4 baris ke dalam satu kolom, rumusnya adalah:

    =TOCOL(A2:C5)

    Rumus dimasukkan hanya dalam satu sel (E2 dalam contoh ini) dan tumpah ke sel di bawahnya secara otomatis. Dalam istilah Excel, hasilnya disebut rentang tumpahan.

    Bagaimana formula ini bekerja:

    Secara teknis, rentang A2:C5 pertama-tama diubah menjadi larik dua dimensi. Harap perhatikan baris yang dipisahkan titik koma dan kolom yang dibatasi koma:

    {"Apple","Banana","Cherry";1,0,3;4,#N/A,6;7,8,9}

    Fungsi TOCOL memindai larik dari kiri ke kanan dan mentransformasikannya ke dalam larik vertikal satu dimensi:

    {"Apple";"Banana";"Cherry";1;0;3;4;#N/A;6;7;8;9}

    Hasilnya ditempatkan di sel E2, dari mana ia tumpah ke dalam sel di bawahnya.

    Cara menggunakan fungsi TOCOL di Excel - contoh rumus

    Untuk mendapatkan pemahaman lebih lanjut tentang kemungkinan fungsi TOCOL dan tugas apa yang dapat dicakupnya, mari kita lihat beberapa contoh rumus.

    Mengubah larik ke kolom dengan mengabaikan kekosongan dan kesalahan

    Seperti yang mungkin telah Anda perhatikan pada contoh sebelumnya, rumus TOCOL default menyimpan semua nilai dari larik sumber, termasuk sel kosong dan kesalahan.

    Dalam larik yang dihasilkan, sel kosong diwakili oleh nol, yang mungkin cukup membingungkan, terutama jika larik aslinya memiliki nilai 0. Solusinya adalah dengan lewati bagian yang kosong Untuk ini, Anda menetapkan argumen ke-2 ke 1:

    =TOCOL(A2:C5, 1)

    Untuk abaikan kesalahan , atur argumen ke-2 ke 2:

    =TOCOL(A2:C5, 2)

    Untuk mengecualikan keduanya, kekosongan dan kesalahan , gunakan 3 untuk abaikan argumen:

    =TOCOL(A2:C5, 3)

    Memindai larik secara horizontal atau vertikal

    Dengan default scan_by_column argumen (SALAH atau dihilangkan), fungsi TOCOL memindai larik secara horizontal menurut baris. Untuk memproses nilai berdasarkan kolom, setel argumen ini ke BENAR atau 1. Misalnya:

    =TOCOL(A2:C5,, BENAR)

    Perhatikan bahwa, dalam kedua kasus, larik yang dikembalikan memiliki ukuran yang sama, tetapi nilainya disusun dalam urutan yang berbeda.

    Menggabungkan beberapa rentang ke dalam satu kolom

    Jika Anda berurusan dengan beberapa rentang yang tidak bersebelahan, maka pertama-tama Anda dapat menggabungkan rentang secara vertikal menjadi satu larik dengan bantuan fungsi VSTACK, lalu gunakan TOCOL untuk mengubah larik gabungan menjadi kolom.

    Dengan mengasumsikan kisaran pertama adalah A2:C4 dan kisaran kedua adalah A8:C9, rumusnya mengambil bentuk ini:

    =TOCOL(VSTACK(A2:C4, A8:C9))

    Rumus ini mendemonstrasikan perilaku default - membaca larik gabungan secara horizontal dari kiri ke kanan seperti yang ditunjukkan pada kolom E pada gambar di bawah.

    Untuk membaca nilai secara vertikal dari atas ke bawah, Anda mengatur argumen ke-3 dari TOCOL ke TRUE:

    =TOCOL(VSTACK(A2:C4, A8:C9), ,TRUE)

    Harap perhatikan bahwa, dalam kasus ini, rumusnya pertama-tama mengembalikan nilai dari kolom A dari kedua larik, lalu dari kolom B, dan seterusnya. Alasannya adalah karena TOCOL memindai satu larik bertumpuk, bukan rentang individu asli.

    Jika logika bisnis Anda memerlukan penumpukan rentang asli secara horizontal daripada vertikal, gunakan fungsi HSTACK alih-alih VSTACK.

    Untuk menambahkan setiap larik berikutnya ke kanan larik sebelumnya dan membaca larik gabungan secara horizontal, rumusnya adalah:

    =TOCOL(HSTACK(A2:C4, A8:C10))

    Untuk menambahkan setiap larik berikutnya di sebelah kanan larik sebelumnya dan memindai larik gabungan secara vertikal, rumusnya adalah:

    =TOCOL(HSTACK(A2:C4, A8:C10), ,TRUE)

    Mengekstrak nilai unik dari rentang multi-kolom

    Fungsi Excel UNIQUE dapat dengan mudah menemukan unik dalam satu kolom atau baris serta mengembalikan baris unik, tetapi tidak dapat mengekstrak nilai unik dari larik multi-kolom. Solusinya adalah menggunakannya bersama dengan fungsi TOCOL.

    Misalnya, untuk mengekstrak semua nilai yang berbeda (berbeda) dari rentang A2:C7, rumusnya adalah:

    =UNIQUE(TOCOL(A2:C7))

    Selain itu, Anda dapat membungkus rumus di atas dalam fungsi SORT untuk mengatur larik yang dikembalikan dalam urutan abjad:

    =SORT(UNIK(TOCOL(A2:C7)))

    Bagaimana mengubah rentang ke kolom di Excel 365 - 2010

    Dalam versi Excel di mana fungsi TOCOL tidak didukung, ada beberapa cara alternatif untuk mengubah rentang sel menjadi kolom. Solusi ini cukup rumit, tetapi tetap berfungsi.

    Untuk membaca rentang per baris:

    INDEX( rentang , HASIL BAGI(BARIS(A1)-1, KOLOM( rentang ))+1, MOD(BARIS(A1)-1, KOLOM( rentang ))+1)

    Untuk membaca rentang per kolom:

    INDEX( rentang , MOD(BARIS(A1)-1, BARIS( rentang ))+1, HASIL BAGI(BARIS(A1)-1, BARIS( rentang ))+1)

    Untuk set data sampel kami, rumusnya adalah sebagai berikut:

    Untuk memindai kisaran secara horizontal dari kiri ke kanan :

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

    Rumus ini setara dengan fungsi TOCOL dengan argumen ke-3 disetel ke FALSE atau dihilangkan:

    =TOCOL(A2:C5)

    Untuk memindai kisaran secara vertikal dari atas ke bawah :

    =INDEX($A$2:$C$5, MOD(ROW(A1)-1, ROWS($A$2:$C$5))+1, QUOTIENT(ROW(A1)-1, ROWS($A$2:$C$5))+1)

    Rumus ini sebanding dengan fungsi TOCOL dengan argumen ke-3 disetel ke TRUE:

    =TOCOL(A2:C5,, BENAR)

    Tidak seperti TOCOL, rumus alternatif harus dimasukkan di setiap sel di mana Anda ingin hasilnya muncul. Dalam kasus kami, rumus masuk ke sel E2 (menurut baris) dan G2 (menurut kolom), lalu disalin ke baris 13.

    Jika rumus disalin ke lebih banyak baris daripada yang dibutuhkan, kesalahan #REF! akan muncul di sel "ekstra". Untuk mencegah hal ini terjadi, Anda dapat menyarangkan rumus dalam fungsi IFERROR seperti ini:

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

    Perhatikan bahwa agar rumus dapat disalin dengan benar, kita mengunci rentang menggunakan referensi sel absolut ($ A $ 2: $ C $ 5). Sebagai gantinya, Anda dapat menggunakan rentang bernama.

    Bagaimana rumus-rumus ini bekerja

    Di bawah ini adalah rincian rincian rumus pertama yang mengatur sel berdasarkan baris:

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

    Idenya adalah menggunakan fungsi INDEX untuk mengembalikan nilai sel tertentu berdasarkan nomor baris dan kolom relatifnya dalam rentang tersebut.

    The nomor baris dihitung dengan kombinasi ini:

    HASIL BAGI(BARIS(A1)-1, KOLOM($A$2:$C$5))+1

    QUOTIENT mengembalikan bagian bilangan bulat dari suatu pembagian.

    Untuk pembilang Anda menggunakan ROW (A1) -1, yang mengembalikan nomor seri dari 0 di E2 (sel pertama tempat rumus dimasukkan) ke 11 di E13 (sel terakhir tempat rumus dimasukkan).

    The penyebut brough by COLUMNS($A$2:$C$5)) adalah konstan dan sama dengan jumlah kolom dalam rentang Anda (3 dalam kasus kami).

    Sekarang, jika Anda memeriksa hasil QUOTIENT untuk 3 sel pertama (E2:E4), Anda akan melihat bahwa hasilnya sama dengan 0 (karena bagian bilangan bulat dari pembagiannya adalah nol). Menambahkan 1 memberikan nomor baris 1.

    Untuk 3 sel berikutnya (E5:E5), QUOTIENT mengembalikan 1, dan operasi +1 memberikan nomor baris 2. Dan seterusnya.

    Dengan kata lain, bagian rumus ini membuat urutan angka berulang seperti 1,1,1,1,2,2,2,2,2,3,3,3,4,4,4,... Setiap angka berulang sebanyak jumlah kolom yang ada dalam rentang Anda.

    Untuk menghitung nomor kolom Anda membuat urutan angka yang sesuai dengan menggunakan fungsi MOD:

    MOD(BARIS(A1)-1, KOLOM($A$2:$C$5))+1

    Karena ada 3 kolom dalam rentang kita (A2:C5), urutannya harus 1,2,3,1,2,3,...

    Fungsi MOD mengembalikan sisa setelah pembagian.

    Di E2, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1)

    menjadi

    MOD(1-1, 3)+1)

    dan mengembalikan 1.

    Dalam E3, MOD(ROW(A2)-1, COLUMNS($A$2:$C$5))+1)

    menjadi

    MOD(2-1, 3)+1)

    dan mengembalikan 2.

    Dengan nomor baris dan kolom yang sudah ditetapkan, INDEX tidak memiliki masalah dalam mengambil nilai yang diperlukan.

    Di E2, INDEX ($ A $ 2: $ C $ 5, 1, 1) mengembalikan nilai dari baris ke-1 dan kolom ke-1 dari rentang yang direferensikan, yaitu dari sel A2.

    Di E3, INDEX($A$2:$C$5, 1, 2) mengembalikan nilai dari baris ke-1 dan kolom ke-2, yaitu dari sel B2.

    Dan sebagainya.

    Rumus kedua yang memindai range per kolom, bekerja dengan cara yang sama. Perbedaannya adalah rumus ini menggunakan MOD untuk mendapatkan nomor baris dan QUOTIENT untuk mendapatkan nomor kolom.

    Fungsi TOCOL tidak berfungsi

    Jika fungsi TOCOL melempar kesalahan, kemungkinan besar itu adalah salah satu dari alasan-alasan ini:

    TOCOL tidak didukung di Excel Anda

    Ketika Anda mendapatkan kesalahan #NAME?, ejaan yang benar dari nama fungsi adalah hal pertama yang harus diperiksa. Jika namanya benar tetapi kesalahan tetap ada, fungsi tersebut tidak tersedia di versi Excel Anda. Dalam hal ini, pertimbangkan untuk menggunakan alternatif TOCOL.

    Larik terlalu besar

    Kesalahan #NUM mengindikasikan bahwa larik tidak bisa masuk ke dalam kolom. Kasus tipikal adalah ketika Anda merujuk ke seluruh kolom atau baris.

    Tidak ada cukup sel kosong

    Saat kesalahan #SPILL terjadi, periksa apakah kolom tempat rumus dimasukkan memiliki cukup sel kosong untuk diisi dengan hasilnya. Jika sel kosong secara visual, pastikan tidak ada spasi dan karakter non-cetak lainnya di dalamnya. Untuk informasi lebih lanjut, lihat Cara memperbaiki kesalahan #SPILL di Excel.

    Begitulah cara Anda dapat menggunakan fungsi TOCOL di Excel 365 dan solusi alternatif di versi sebelumnya untuk mengubah array 2 dimensi menjadi satu kolom. Saya berterima kasih telah membaca dan berharap dapat melihat Anda di blog kami minggu depan!

    Buku kerja praktik

    Fungsi Excel TOCOL - contoh rumus (file .xlsx)

    Michael Brown adalah penggemar teknologi berdedikasi dengan hasrat untuk menyederhanakan proses kompleks menggunakan perangkat lunak. Dengan pengalaman lebih dari satu dekade di industri teknologi, dia telah mengasah keahliannya di Microsoft Excel dan Outlook, serta Google Spreadsheet dan Dokumen. Blog Michael didedikasikan untuk berbagi pengetahuan dan keahliannya dengan orang lain, memberikan tip dan tutorial yang mudah diikuti untuk meningkatkan produktivitas dan efisiensi. Apakah Anda seorang profesional berpengalaman atau pemula, blog Michael menawarkan wawasan berharga dan saran praktis untuk mendapatkan hasil maksimal dari perangkat lunak penting ini.