VBA Untuk Setiap Gelung

Excel VBA Untuk Setiap Gelung

VBA For Every Loop melalui semua koleksi objek atau barang dan melakukan sekumpulan aktiviti yang serupa. Ia akan mempertimbangkan semua objek yang ada dan melakukan aktiviti yang diarahkan pada setiap objek.

Dalam VBA adalah wajib untuk memahami gelung dalam VBA. Gelung membolehkan anda melakukan aktiviti yang sama untuk banyak sel atau objek di excel. Dalam artikel hari ini, kita akan menumpukan perhatian pada mekanisme For Every Loop.

Sintaks

Untuk Setiap Gelung dapat melingkari semua kumpulan objek atau item yang ditetapkan. Koleksi tidak lain hanyalah "Semua buku kerja yang dibuka", "Semua lembaran kerja dalam buku kerja", "Semua koleksi bentuk dan carta dalam buku kerja".

Mari lihat sintaksnya.

Untuk Setiap Objek Dalam Koleksi Apa yang Perlu Dilakukan? Objek Seterusnya

Contohnya, Anda mempunyai 10 helaian di buku kerja anda dan anda mahu menyembunyikan semua lembaran kerja kecuali yang ada di dalamnya. Bolehkah anda menyembunyikan secara manual, ya anda boleh tetapi bagaimana jika anda mempunyai 100 helaian seperti itu bukan itu membosankan dan masa -konsumsi tugas yang perlu dilakukan. Anda boleh melakukannya menggunakan setiap gelung.

Bagaimana cara menggunakan Untuk Setiap Gelung di VBA? (Contoh)

Anda boleh memuat turun Templat VBA Untuk Setiap Gelung di sini - Templat VBA Untuk Setiap Gelung

Contoh # 1 - Masukkan Teks yang Sama di Semua Helaian

Kami akan melihat bagaimana menggunakan UNTUK SETIAP di VBA dengan contoh mudah. Andaikan anda mempunyai 5 lembaran kerja dalam buku kerja dan anda mahu memasukkan perkataan "Hello" di semua lembaran kerja di sel A1.

Kita boleh melakukannya dengan UNTUK SETIAP LOOP. Satu perkara yang perlu anda ingat di sini ialah kita sebenarnya melakukan aktiviti ini di setiap lembaran kerja, bukan di lembaran kerja yang sama. Ikuti langkah di bawah untuk menulis kod VBA.

Langkah 1: Mulakan makro excel.

Kod:

 Sub Untuk_Each_Contoh1 () Akhir Sub 

Langkah 2: Oleh kerana kita merujuk pada lembaran kerja menyatakan pemboleh ubah sebagai "Lembaran Kerja".

Kod:

 Sub Untuk_Each_Contoh1 () Dim Ws Sebagai Lembaran Kerja Akhir Sub 

Langkah 3: Sekarang menggunakan UNTUK SETIAP LOOP kita perlu merujuk setiap lembaran kerja dalam buku kerja aktif.

Kod:

 Sub Untuk_Each_Contoh1 () Dim Ws Sebagai Lembaran Kerja Untuk Setiap Ws dalam ActiveWorkbook. Lembaran Kerja Selanjutnya Ws Akhir 

Langkah 4: Sekarang tulis apa yang ingin kita lakukan di setiap lembaran kerja. Di setiap lembaran kerja, kita perlu memasukkan kata "Hello" di sel A1.

Kod: 

 Sub Untuk_Each_Contoh1 () Dim Ws Sebagai Lembaran Kerja Untuk Setiap Ws dalam ActiveWorkbook.Worksheets Ws.Range ("A1"). Value = "Hello" Next Ws End Sub 

Langkah 5: Sekarang jalankan kod ini secara manual melalui pilihan atau tekan kekunci pintas F5, tidak kira berapa helaian yang anda miliki akan memasukkan Kata "Hello" di semua lembaran kerja.

Contoh # 2 - Sembunyikan Semua Helaian

Seperti yang diberitahu sebelumnya dalam catatan bagaimana jika anda mempunyai ratusan helaian untuk disembunyikan kecuali yang anda gunakan. Dengan menggunakan setiap gelung, kami dapat menyembunyikan semua helaian di excel.

Langkah 1: Mulakan makro dengan nama anda.

Kod:

 Sub Untuk_Each_Contoh2 () Akhir Sub 

Langkah 2: Nyatakan pemboleh ubah sebagai " Ws ".

Kod:

 Sub Untuk_Each_Contoh2 () Dim Ws Sebagai Lembaran Kerja Akhir Sub 

Langkah 3: Sekarang di setiap lembaran kerja apa yang perlu anda lakukan ialah menyembunyikan helaian.

Kod:

 Sub Untuk_Each_Contoh2 () Dim Ws Sebagai Lembaran Kerja Untuk Setiap Ws dalam ActiveWorkbook.Wheets Works Ws.Visible = xlSheetVeryHidden Next Ws End Sub 

Langkah 4: Tetapi jika anda menjalankan kod di atas, ia akan cuba menyembunyikan semua helaian tetapi excel memerlukan sekurang-kurangnya satu helaian agar dapat dilihat. Oleh itu, kita perlu memberitahu lembaran mana yang tidak boleh disembunyikan.

Kod:

 Sub Untuk_Each_Contoh2 () Dim Ws Sebagai Lembaran Kerja Untuk Setiap Ws di ActiveWorkbook.Wheets Works If Ws.Name "Main Sheet" Kemudian Ws.Visible = xlSheetVeryHidden End If Next Ws End Sub 

The simbol operator cara tidak sama dalam VBA .

Jadi kod mengatakan semasa anda melingkari semua lembaran kerja di buku kerja aktif hanya menyembunyikan jika nama helaian tidak sama dengan nama helaian Lembaran Utama.

Ini dapat dilakukan dengan menggunakan pernyataan IF di VBA. Tuliskan kodnya sebagai IF Ws.Name "Main Sheet" Kemudian sembunyikan atau jika sama dengan nama helaian "Main Sheet" maka jangan sembunyikan.

Langkah 5: Sekarang jalankan kod menggunakan kunci F5 atau secara manual, ia akan menyembunyikan semua lembaran kerja kecuali yang dinamakan sebagai "Lembaran Utama".

Contoh # 3 - Nyahsembunyikan Semua Helaian

Kami telah melihat bagaimana menyembunyikan semua helaian kecuali yang ada di dalamnya. Begitu juga, kami dapat menyembunyikan semua lembaran kerja juga.

Kita hanya perlu menukar kod dari xlSheetVeryHidden kepada xlSheetVisible.

Kod:

 Sub Untuk_Each_Contoh3 () Dim Ws Sebagai Lembaran Kerja Untuk Setiap Ws di ActiveWorkbook.Wheets Works Ws.Visible = xlSheetVisible Next Ws End Sub 

Di sini kita tidak memerlukan syarat JIKA kerana kita mengeluarkan semua helaian. Sekiranya anda tidak mahu menyembunyikan helaian tertentu, anda boleh menggunakan syarat JIKA dan memberikan nama helaian.

Contoh # 4 - Lindungi dan Lindungi Semua Helaian

Lindungi Semua Helaian: Kami dapat melindungi semua helaian di buku kerja dengan hanya sekeping kod. Semua kod adalah satu-satunya perkara yang perlu kita lakukan di sini adalah bukannya Ws. Kelihatan kita perlu meletakkan kod Ws. Lindungi dan taip kata laluan.

Kod:

 Sub Untuk_Each_Contoh4 () Dim Ws Sebagai Lembaran Kerja Untuk Setiap Ws di ActiveWorkbook.Wheets Works Ws.Protect Password: = "Excel @ 2019" Next Ws End Sub 

Lindungi semua Helaian: Pada catatan serupa, menggunakan vba kita juga dapat melindung semua helaian yang dilindungi di dalam buku kerja. Kita hanya perlu meletakkan perkataan Unprotect dan password

Kod:

 Sub For_Each_Example6() Dim Ws As Worksheet For Each Ws In ActiveWorkbook.Worksheets Ws.Unprotect Password:="Excel@2019" Next Ws End Sub 

Things to Remember

  • Each is for the collection of objects.
  • It will consider all the specified objects in the specified workbook.
  • While declaring the variable we need to which object we are referring to. For example Worksheet, Workbook, Chart, etc.