Rentang Sortir VBA

Rentang Sortir VBA Excel

Pengurutan rentang dalam VBA dilakukan dengan metode range.sort, ini adalah properti metode rentang yang dapat digunakan pengguna untuk mengurutkan rentang, argumen untuk fungsi ini adalah Key1, Order1, Key2, Type, Order2, Key3 , Order3, Header, OrderCustom, MatchCase, Orientation, SortMethod, DataOption1, DataOption2, DataOption3, semua argumen untuk fungsi ini bersifat opsional.

Sebagai bagian dari pengorganisasian data atau penataan data, penting untuk menyortir data dan membuatnya tertata. Hal serupa juga tersedia dengan VBA, jadi pertanyaan umum tentang pelajar baru VBA adalah bagaimana kami dapat menggunakan opsi pengurutan ini sebagai bagian dari otomatisasi VBA dan artikel ini memandu Anda melalui rentang Pengurutan VBA secara mendetail.

Dengan excel kita semua sudah familiar dengan pilihan jenis yang tersedia di bawah tab DATA.

Urutkan Opsi di VBA

Untuk menggunakan opsi sortir, pertama-tama kita perlu memutuskan apa rentang data kita dan menyebutkan rentang data yang sama dengan menggunakan objek RANGE di VBA, lalu hanya kita yang bisa mengakses opsi “Sort” di VBA. Misalnya, asumsikan rentang data saya dari A1 hingga D10, maka kami dapat memberikan rentang data sebagai berikut.

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: D10") End Sub 

Sekarang beri titik dan pilih metode "SORT".

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: D10"). Sortir Akhir Sub 

Di bawah ini adalah sintaks dari metode SORT range, meskipun sintaks memiliki argumen yang berbeda, kita tidak membutuhkan semuanya untuk pengkodean VBA kita, jadi kita hanya membutuhkan beberapa elemen.

[Key1]: Dalam rentang data yang kami sortir, kami perlu menentukan kolom mana yang perlu kami sortir. Misalnya pada range data A1: D10 jika kita ingin mengurutkan data berdasarkan kolom B maka [Key1] akan menjadi Range (“B1”) .

[Urutan1]: Kolom yang disebutkan dalam argumen [Key1] harus diurutkan dalam urutan apa. Kita dapat memilih dua opsi di sini "xlAscending" atau "xlDescending".

Header: Rentang data yang disebutkan memiliki header atau tidak, jika ya kami dapat menyediakan “xlYes” atau kami dapat menyediakan “xlNo”.

Contoh Rentang Sortir di VBA

Mari kita ambil contoh rentang sortir excel VBA untuk memahami ini dengan cara yang lebih baik.

Anda dapat mendownload Template Excel Rentang Sortir VBA ini di sini - Template Excel Rentang Sortir VBA

Misalnya, lihat struktur data di bawah ini.

Kami memiliki data dari A1 hingga E17, jadi pertama-tama kami akan mengurutkan data berdasarkan "berdasarkan negara". Ikuti langkah-langkah di bawah ini untuk menulis kode untuk menyortir data.

Langkah 1: Mulai prosedur makro excel.

Kode:

 Sub Sortir_Rentang_Contoh () End Sub 

Langkah 2: Pertama-tama sebutkan rentang data dengan menggunakan objek RANGE .

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: E17") End Sub 

Langkah 3: Sekarang pilih metode " Sort " dari objek Range.

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: E17"). Sortir Akhir Sub 

Langkah 4: Karena kita menyortir data berdasarkan "Negara-bijaksana" kolom argumen Kunci 1 kita akan menjadi Range ("B1").

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: E17"). Kunci Urutkan1: = Rentang ("B1"), Sub Akhir 

Langkah 5: Setelah kolom yang diperlukan disebutkan, kita perlu menyebutkan dalam urutan apa kita perlu mengurutkan data dan "Order1" akan menjadi urutan "xlAscending" .

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: E17"). Kunci Urutkan1: = Rentang ("B1"), Urutan1: = xlAscending, End Sub 

Langkah 6: Data kami memiliki header sehingga Header akan menjadi "xlYes".

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: E17"). Kunci Urutkan1: = Rentang ("B1"), Urutan1: = xlAscending, Tajuk: = xlYes End Sub 

Kami telah menyebutkan semua elemen yang diperlukan untuk mengurutkan data. Jalankan kode dengan menekan tombol dan fungsi F5 dan lihat hasilnya.

Keluaran:

Data telah diurutkan berdasarkan nama Negara dengan urutan A sampai Z.

Sekarang asumsikan kita perlu mengurutkan data berdasarkan Negara-bijaksana juga kita perlu mengurutkan " Penjualan Bruto " dari yang tertinggi ke terendah. Dalam kasus seperti itu, kita perlu menggunakan argumen Key2 dan Order2 juga.

Setelah menyebutkan Key1 & Order1, pilih Key2.

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: E17"). Kunci Urutkan1: = Rentang ("B1"), Urutan1: = xlAscending, Kunci2: = End Sub 

Karena kita mengurutkan data berdasarkan kolom " Penjualan Bruto ", nama kolom Key2 kita adalah Range ("D1").

Kode:

 Sub Sortir_Rentang_Contoh () Rentang ("A1: E17"). Kunci Urutkan1: = Rentang ("B1"), Urutan1: = xlAscending, Kunci2: = Rentang ("D1"), End Sub 

Once the Key2 is specified we need to decide on the sorting patter of whether it is ascending order or descending order in Order2 argument since we are sorting the sales value from largest to smallest we can choose “xlDescending” order.

Code:

 Sub Sort_Range_Example() Range("A1:E17").Sort Key1:=Range("B1"), Order1:=xlAscending, Key2:=Range("D1"), Order2:=xlDescending, Header:=xlYes End Sub 

After that mention the Header argument as “xlYes”. Now run the code and see what happens.

Output:

Previously it has sorted based only on “Country-wise” but this time it has sorted based on “Country-wise” first and then also on “Gross Sales” from highest to lowest.

Like this, we can use the “Sort” method in VBA to organize the data.

Things to Remember about Excel VBA Sort Range

  • The sort is a method available in VBA and to access this method we need to specify what the range of cells we are going to sort.
  • If the data range includes headers then we need to choose the header option as “xlYes”, if not we can choose “xlNo”.