Pilih Deskripsi Kasus VBA. Pilih Operator Cabang Kasus

Contoh operator kasus pilih

Di sini jelas tidak mencegah contoh yang menunjukkan bagaimana struktur kasus pilih sebenarnya bisa terlihat.

Pilih kasus objrol l offi l m.type

Kasus "slideshova"

intslade \u003d intslyd + 1

Kasus "warna negatif"

intrologenegatif \u003d introliseegenegal + 1

Kasus "negatif"

intcbnegal \u003d intcbnegal + 1

Mgabox " Tipe yang tidak diketahui. Film. "

Pada dasarnya, cuplikan kode program ini sama dengan kode program di atas untuk contoh dari bagian Operator IF. . .ESIF (dihilangkan hanya memeriksa periode penyimpanan). Benar, sejak itu objek hipotetis kami, mewakili roller film, tampaknya, agak dimodifikasi - informasi tentang warna warna film sekarang juga disajikan ke properti tur, dan bukan properti warna yang terpisah, seperti sebelumnya .

Dan jika itu adalah situasi dengan cara ini, maka program harus bekerja hanya dengan satu nilai - dengan nilai yang dikembalikan oleh properti tur. - Tapi nilai ini dibandingkan dengan beberapa yang diizinkan. Jadi, kasus pilih hanya saja yang diresepkan dokter untuk kesempatan kami.

Aplikasi pertama dari operator kasus dalam contoh ini setara dengan menggunakan jika objrollof film.type \u003d "slide" lalu, mis .. Jika properti dari putaran objek adalah "slide", program melakukan pernyataan berikut, jika tidak, ia pergi ke operator kasus kedua.

Perhatikan bahwa tanda operasi, keberadaannya tampaknya logis pada pandangan pertama, tidak ada kriteria. Alasannya adalah bahwa dalam operator kasus tertentu, kesetaraan sebagai operasi perbandingan hanya dimaksudkan.

Dari sistem built-in perangkat lunak buku. Persyaratan umum untuk pengembangan dan dokumentasi Penulis Status Negara Rusia

Komputer + Ponsel: Interaksi Efektif Penulis Goltzman Viktor Iosifovich.

Mengirim dari situs operator hingga saat ini, mungkin, semua dukungan operator mengirim SMS. dari situs Anda. Pesan, bagaimanapun, dapat dikirim hanya ke pelanggan operator iniTapi ini, sebagai aturan, itu cukup terjadi. Jadi, untuk berlatih. Sekarang kita akan melihat

Dari buku Unix: interaksi proses Penulis Stevens William Richard.

Contoh: Antrian Pesan POSIX dan pilih Fungsi Descriptor Message Queue ( ketik variabel MQD_T) bukan deskriptor "biasa" dan tidak dapat digunakan dengan fungsi pilih dan jajak pendapat (Bab 6). Namun demikian, mereka dapat digunakan dengan saluran dan fungsi MQ_NOTIFY. (Serupa

Dari Buku VBA untuk teko penulis cummings Steve.

Dari buku panduan pengembang basis data Firebird oleh Borry Helen

Melakukan kondisi dalam operator kasus tertentu, struktur kasus pilih tidak secara eksplisit menggunakan ekspresi kondisional lengkap yang serupa dengan yang dibahas di atas (lihat "tentu saja penggunaan ekspresi bersyarat"). Anda harus membagi setiap kondisi menjadi dua bagian, direpresentasikan sebagai

Dari buku seni pemrograman dalam bahasa skenario shell tim oleh penulis Cooper Mendel

Dari buku panduan bahasa si Penulis Prata Stephen

Dari buku Linux dan Unix: pemrograman dalam shell. Panduan Pengembang. oleh teinsley david.

Dari buku C ++ untuk pemula oleh penulis Lippman Stenna

Contoh 10-24. Gunakan kasus #! / Bin / Bashecho; Echo "tekan tombol dan kemudian tombol kembali. Baca tekan" $ tombol "dalam) echo" huruf dalam huruf kecil ";; ) Echo "huruf di daftar atas" ;; ) echo "digit" ;; *) Echo "tanda tanda baca, ruang atau sesuatu yang lain" ;; ESAC # diizinkan ditentukan

Dari Buku Unix: Pengembangan Aplikasi Jaringan Penulis Stevens William Richard.

Contoh 10-25. Membuat Kasus #! / Bin / Bash # Contoh Kasar DatabaseClear Cleaning Screen "Echo List ------" Echo "Pilih orang yang Anda minati:" Echoecho "[E] Vans, Roland" Echo "[J] Yang, Mildred "Echo" [S] Mith, Julie "Echo" [Z] Anea, Morris "Echoead personasalah" $ orang "di # harap dicatat: variabel diambil dalam tanda kutip.

Dari Kitab Penulis

Contoh 10-26. Operator kasus memungkinkan Anda untuk menggunakan pengaturan perintah alih-alih variabel yang dianalisis #! / Bin / bash # substitusi perintah dalam "case" .case $ (lengkungan) dalam # Perintah lengkungan mengembalikan string yang menggambarkan perangkat aphitecut.i386 ) Echo "CPU 80386" ;; i486) Echo "Mesin berdasarkan

Dari Kitab Penulis

Contoh A-18. Generasi bilangan prima menggunakan modul divisi operator (saldo divisi) #! / Bin / bash # primes.sh: generasi bilangan prima, tanpa menggunakan array. # Penulis: Stephane Chazelas. Skenario ini tidak menggunakan algoritma kelas ". Devolo Eratosthene ", # + bukannya dia

Dari Kitab Penulis

Ekspansi operator jika menggunakan yang lain Bentuk paling sederhana Operator IF adalah salah satu yang baru saja kita gunakan: jika (ekspresi) operator biasanya di bawah ekspresi di sini memahami ekspresi kondisional, nilai dua nilai dibandingkan (misalnya x\u003e y

Dari Kitab Penulis

18.8.2. Pengakhiran eksekusi operator kasus mempertimbangkan contoh berikut. Dalam skrip, siklus tak terbatas dilakukan sampai pengguna memasuki angka lebih besar dari 5. Untuk mengganggu siklus dan kembali ke garis komando Penerjemah Buka Tim Bekas. $ Pg

Dari Kitab Penulis

Dari Kitab Penulis

Contoh sederhana menggunakan fungsi pilih sekarang kami akan mengulang kode penerima data out-of-band kami dan alih-alih sinyal Sigurg akan menggunakan fungsi pilih. Listing 24.3 menunjukkan program penerima. Beristirahat 24.3. Program penerima di mana (keliru)

Paling operator penting Kondisi yang digunakan dalam. Excel VBA. - Ini adalah operator Jika kemudian. dan Pilih Kasus.. Kedua ekspresi ini memeriksa satu atau lebih kondisi dan, tergantung pada hasilnya, melakukan berbagai tindakan. Selanjutnya, kita akan berbicara tentang dua operator kondisi ini secara lebih rinci.

Operator "Jika ... lalu" dalam Visual Basic

Operator Jika kemudian. Memeriksa kondisi dan, jika itu benar (benar), serangkaian tindakan yang ditentukan dilakukan. Seperangkat tindakan yang harus dieksekusi jika kondisinya salah (false) dapat didefinisikan.

Operator Sintaks Jika kemudian. Ini adalah:

Jika Kondisi1. Kemudian.
Tindakan dalam kasus kondisi1 puas
.. Kondisi2. Kemudian.
Tindakan dalam Kondisi Kondisi2 Puas
LAIN.
Tindakan dalam kasus tidak ada kondisi yang dilakukan
Berakhir jika

Dalam item ungkapan ini .. dan LAIN. Kondisi operator mungkin tidak digunakan jika tidak perlu.

Di bawah ini adalah contoh di mana menggunakan operator Jika kemudian. Warna isi sel aktif bervariasi tergantung pada nilai-nilai di dalamnya:

Jika activeCell.value.< 5 Then ActiveCell.Interior.Color = 65280 "Ячейка окрашивается в зелёный цвет ElseIf ActiveCell.Value < 10 Then ActiveCell.Interior.Color = 49407 "Ячейка окрашивается в оранжевый цвет Else ActiveCell.Interior.Color = 255 "Ячейка окрашивается в красный цвет End If

Harap dicatat bahwa segera setelah kondisinya menjadi kenyataan, pelaksanaan operator kondisional terputus. Akibatnya, jika nilai variabel Sel aktif. Kurang dari 5, maka kondisi pertama menjadi benar dan sel dicat dengan warna hijau. Setelah itu, eksekusi operator Jika kemudian. Terputus dan kondisi yang tersisa tidak diperiksa.

Operator "Pilih Kasus" dalam Visual Basic

Operator Pilih Kasus. Mirip dengan operator Jika kemudian. Karena itu juga memeriksa kebenaran kondisi dan, tergantung pada hasilnya, memilih salah satu opsi aksi.

Operator Sintaks Pilih Kasus. Ini adalah:

Pilih Kasus. Ekspresi
Kasus. Makna1.
Tindakan jika hasil dari ekspresi sesuai dengan nilai1
Kasus. Artinya2.
Tindakan jika hasil ekspresi sesuai dengan nilai2

Kasus lain.
Tindakan jika hasil dari ekspresi tidak sesuai dengan opsi yang tercantum
Pilih Pilih.

Elemen Kasus lain. Ini tidak wajib, tetapi disarankan untuk menggunakannya untuk memproses nilai-nilai yang tidak terduga.

Dalam contoh berikut menggunakan desain Pilih Kasus. Warna casting sel saat ini bervariasi tergantung pada nilai-nilai di dalamnya:

Pilih Kasus ActiveCell.Value Case adalah<= 5 ActiveCell.Interior.Color = 65280 "Ячейка окрашивается в зелёный цвет Case 6, 7, 8, 9 ActiveCell.Interior.Color = 49407 "Ячейка окрашивается в оранжевый цвет Case 10 ActiveCell.Interior.Color = 65535 "Ячейка окрашивается в жёлтый цвет Case 11 To 20 ActiveCell.Interior.Color = 10498160 "Ячейка окрашивается в лиловый цвет Case Else ActiveCell.Interior.Color = 255 "Ячейка окрашивается в красный цвет End Select

Contoh di atas menunjukkan bagaimana mengatur nilai untuk elemen sebagai metode yang berbeda. Kasus. Dalam desain Pilih Kasus.. Ini adalah cara-cara ini:

Kasusnya adalah.<= 5 Jadi dengan bantuan kata kunci Kasusnya adalah. dapat diperiksa apakah itu memenuhi nilainya Ekspresi Kondisi tampilan <=5 .
Kasus 6, 7, 8, 9 Sehingga Anda dapat memeriksa apakah nilai cocok Ekspresi dengan salah satu nilai yang terdaftar. Nilai-nilai yang tercantum dipisahkan oleh koma.
Kasus 10. Jadi memeriksa apakah nilai cocok Ekspresi Dengan nilai yang ditentukan.
Kasus 11 hingga 20 Dengan cara ini, Anda dapat merekam ekspresi untuk memeriksa apakah nilai memuaskan Ekspresi Kondisi tampilan dari 11 hingga 20 (setara dengan ketidaksetaraan "11<=значение<=20”).
Kasus lain. Seperti ini, dengan bantuan kata kunci LAIN., menunjukkan tindakan untuk kasus jika nilainya Ekspresi tidak sesuai dengan salah satu opsi yang tercantum Kasus..

Segera setelah salah satu syarat ditemukan, tindakan yang tepat dilakukan dan output terbuat dari desain. Pilih Kasus.. Artinya, bagaimanapun, hanya satu dari cabang yang tercantum yang akan dilakukan. Kasus..

Dalam program nyata, sering kali diperlukan untuk melakukan pilihan yang lebih kompleks dalam prosedur, memilih antara tiga dan lebih banyak cabang. Dalam hal ini, Anda dapat menempatkan operator JIKA..TOLLO..se. satu sama lain. Ini disebut investasi operator.

Prosedur di atas menggunakan beberapa operator transisi bersyarat satu sama lain. Harus dikatakan bahwa prosedur seperti itu hanya akan berfungsi di Excel, karena Menggunakan metode aplikasi.Inputbox (lihat aplikasi host). Metode ini tidak memberi pengguna saat menjalankan fungsi untuk memasukkan apa pun selain dari angka.

Jika pengguna tidak memasukkan nomor, maka pesan menerima ini.



Jika pengguna tidak memasukkan apa pun, itu mendapat kesalahan karena kesalahan.




Jika pengguna menggunakan tombol "Batal", maka pesan "tidak dimasukkan" diterima.


VBA menyediakan versi operator yang disingkat JIKA..TOLLO..se.yang padat yang setara dengan operator bersarang JIKA..TOLLO..se.digunakan dalam daftar. Bentuk singkat seperti operator Jika..kemudian..elseif.



Manakah dari opsi yang digunakan adalah pertanyaan yang memutuskan setiap programmer untuk diri sendiri secara individu. Diyakini bahwa opsi kedua lebih kompak, sedangkan yang pertama lebih nyaman dan dapat dimengerti.


Untuk memilih pilihan beberapa cabang kode yang mungkin, Anda dapat menginvestasikan operator JIKA..TOLLO..se. Pada banyak level dalam, tetapi untuk melacak kemajuan cabang menjadi lebih sulit dan lebih sulit.

VBA memiliki pernyataan transisi bersyarat untuk digunakan dalam kasus-kasus di mana perlu untuk memilih dari sejumlah besar cabang kode yang berbeda - Pilih Kasus.. Ini bekerja hampir sama dengan yang lain..Jika, tetapi lebih dipahami.

Kata kunci Pilih Kasus digunakan dengan banyak operator kasus, di mana setiap operator kasus memeriksa penampilan kondisi lain dan hanya salah satu cabang kasus. Cabang kasus dapat berisi satu, beberapa atau tidak satu operator VBA tunggal.


Operator transisi tanpa syarat

Operator transisi tanpa syarat dapat dikatakan adalah rudimen dari bahasa pemrograman awal di mana hampir merupakan satu-satunya cara untuk mengorganisir eksekusi siklus blok kode.

Pernyataan transisi tanpa syarat selalu mengubah prosedur untuk melakukan operator dalam prosedur atau fungsi. Dalam hal ini, tidak ada kondisi yang diperiksa.


Sintaksis:

GOTO LINE.


garis - Label atau nomor baris yang diijinkan dalam prosedur atau fungsi yang sama yang berisi pernyataan GOTO.

Dan dalam posting hari ini kita akan membahas tentang pernyataan kasus pilih VBA. Kasing pilih VBA dapat digunakan sekset Excel yang kompleks jika ada. Ini membuat kode VBA lebih cepat untuk dieksekusi dan lebih mudah dipahami.

Pernyataan Select-Case (juga disebut sebagai switch case dalam beberapa langauz) memeriksa variabel atau ekspresi untuk kasus yang berbeda (nilai). Jika ada orang yang benar benar, hanya kasus yang dijalankan dan program mengabaikan semua kasus lainnya.

Jika Anda ingat dalam posting terakhir kami, kami berbicara tentang, "Bagaimana Anda bisa".

Sintaks dari Pernyataan Kasus Pilih VBA:

Sintaks berada di bawah:

Pilih Kondisi Kasus
Nilai Kasus_1.
Kode untuk dieksekusi saat kondisi \u003d nilai_1
Nilai kasus_2.
Kode untuk dieksekusi saat kondisi \u003d nilai_2
Nilai kasus_3.
Kode untuk dieksekusi saat kondisi \u003d nilai_3
Kasus lain
Kode untuk dieksekusi ketika semua kasus lainnya salah
Pilih Pilih.

Di sini, 'kondisi' mengacu pada variabel atau ekspresi yang akan diuji dan berdasarkan pada siapa pun dari segmen kode akan dieksekusi.

'Nilai_1', 'Value_2' dan 'Value_3' adalah kemungkinan hasil dari 'kondisi'. Setiap kali siapa pun dari nilai-nilai ini cocok dengan 'kondisi' maka blok kasus yang sesuai akan dieksekusi.

'Else' adalah semacam nilai kasus default, yang hanya akan melaksanakan ketika semua pernyataan kasus di atas menghasilkan FALSE. Kasus yang lain adalah opsional tetapi umumnya dianggap sebagai praktik yang baik untuk menggunakannya.

Contoh-contoh kasus-kasus dalam VBA:

Sekarang mari kita beralih ke beberapa contoh praktis pernyataan kasus.

Contoh 1:Pilih pernyataan kasus dengan ekspresi.

Dalam contoh di bawah ini, kami telah menyediakan suatu kondisi (I.E. A \u003d B) ke Pernyataan Kasus Pilih. Jika ini benar maka blok 'kasus benar' akan dieksekusi dan jika itu salah maka blok 'kasus palsu' akan dieksekusi.

Sub Select_Case_Example () "Masukkan nilai untuk variabel A \u003d inputbox (" Masukkan nilai untuk A: ") b \u003d inputbox (" Masukkan nilai untuk B: ")" Mengevaluasi ekspresi Pilih Kasus A \u003d B Case Benar MsgBox " Ekspresi benar "Kasus Palsu MsgBox" Ekspresi salah "End Select End Sub

catatan:Dalam kode ini digunakan untuk mendapatkan nilai dari pengguna.

Contoh 2:Pernyataan kasus untuk memeriksa string teks

Dalam contoh ini kita akan membandingkan string teks dalam kondisi kasus. Jika pertandingan ditemukan, blok kasus yang sesuai akan mengeksekusi sebaliknya, blok 'kasus lain' akan dieksekusi.

Sub Select_Case_Example () "Masukkan nilai untuk variabel fruit_name \u003d inputbox (" Masukkan nama buah: ")" Mengevaluasi ekspresi pilih kasus buah_name kasus "Apple" MSGBOX "Anda memasukkan apple" MSGBox "Anda memasuki Mango" "Oranye" MsgBox "Anda memasuki oranye" Msgbox "Saya tidak tahu buah ini!" Akhiri Select End Sub

Contoh 3:Pernyataan kasus untuk memeriksa angka

Dalam contoh di bawah ini kami akan memeriksa apakah nomor yang dimasukkan oleh pengguna kurang dari 5.

Sub Select_Case_Example () "Masukkan nilai untuk variabel num \u003d inputbox (" Masukkan nomor apa saja antara 1 hingga 10: ")" Mengevaluasi ekspresi pilih kasus num case adalah< 5 MsgBox "Your Number is less than 5" Case Is = 5 MsgBox "Your Number is Equal to 5" Case Is > 5 msgbox "Nomor Anda lebih besar dari 5" end Pilih akhir sub

catatan:Kamu bisa memakai AKU S.kata kunci dengan pernyataan kasus untuk membandingkan nilai.

Contoh 4:Pilih Pernyataan Kasus untuk memeriksa beberapa kondisi di dalam satu kasus.

Dalam contoh ini kami akan meminta pengguna untuk mengakhiri angka apa pun dari 1-10. Dan jumlahnya bahkan atau aneh dengan menggunakan beberapa kondisi dalam pernyataan kasus. Perhatikan di sini saya belum melakukan "," (koma) untuk membandingkan beberapa kondisi dalam satu kasus.

Sub Select_case_example () "Masukkan nilai untuk variabel num \u003d inputbox (" Masukkan nomor apa saja antara 1 hingga 10: ")" Mengevaluasi ekspresi pilih kasus num case 2, 4, 6, 8, 10 msgbox "Nomor yur" bahkan. " Kasus 1, 3, 5, 7, 9 msgbox "Nomormu aneh." Kasus lain msgbox "Nomor Anda di luar jangkauan." End pilih akhir sub

catatan:Saya tahu bahwa ada metode yang lebih mudah untuk memeriksa apakah angka bahkan atau aneh, tetapi saya memiliki contoh ini hanya untuk menjelaskan bagaimana Anda dapat memeriksa beberapa kondisi di dalam satu pernyataan kasus.

Contoh 5:Pernyataan kasus untuk memeriksa rentang kontinu sebagai syarat.

Di sini kita akan menguji rentang kontinu sebagai suatu kondisi. Kami akan meminta pengguna untuk memasukkan nomor apa pun antara 1-10, jika nomornya antara 1 hingga 5 (termasuk 1 dan 5) maka 'Kasus 1 hingga 5' akan 'benar', jika jumlah yang dibakar oleh pengguna adalah Antara 6 dan 10 (termasuk 6 dan 10) maka 'Kasus 6 hingga 10' akan 'benar', jika kedua kasus sebelumnya 'akan dieksekusi.

Sub Select_Case_Example () "Masukkan nilai untuk variabel num \u003d inputbox (" Masukkan nomor apa saja antara 1 hingga 10: ")" Mengevaluasi ekspresi pilih kasus num case 1 hingga 5 msgbox "Nomor Yur 6 hingga 10 msgbox "Nomor Anda antara 6 hingga 10" kasus lain msgbox "nomor Anda berada di luar jangkauan." End pilih ujung sub

Jadi, ini semua tentang pernyataan kasus pilih VBA. Jangan ragu untuk berbagi thoughts Anda tentang topik ini.

Tentang Ankit Kaul.

Ankit adalah pendiri trik Excel. Dia adalah Geek Tech yang suka duduk di depan pacar pacar-nya yang dikepalai (PC-nya) sepanjang hari. : D. Ankit memiliki hasrat yang kuat untuk mempelajari Microsoft Excel. Satu-satunya tujuannya adalah mengubah kalian menjadi "Excel Geeks".

Saat membuat program yang kompleks, salah satu poin utama adalah kemampuan untuk menyediakan beberapa opsi untuk mengembangkan peristiwa. Contoh termudah dan paling klasik adalah operator " Jika ... kalau begitu ... lainnya ... AKHIR"Itu memungkinkan Anda untuk memilih satu dari dua tindakan tergantung pada hasil memeriksa nilai apa pun. Itu terjadi karena cek ini, Anda harus memilih dari berbagai opsi. Salah satu output" ... ..... "Agar itu menyulitkan sintaks program (kemudahan membaca). Namun, ini adalah operator yang sangat kuat yang membuka peluang besar. Lebih lanjut tentang hal itu dapat ditemukan.

Alternatif untuk operator " Jika ... end."Melayani Operator" Pilih Kasus."(dari bahasa Inggris" Pilih Kasus."Anda dapat menerjemahkan sebagai" pilihan situasi "), yang menyederhanakan persepsi kode" pada mata ". Dan jika" Jika ... end."Operator di masing-masing" .."Itu dipaksa untuk beralih ke nilai-nilai yang diverifikasi berulang kali (misalnya, ekspresi sama setiap kali), maka" Pilih Kasus."Apakah hanya sekali, memungkinkan yang terakhir pada array data besar untuk bekerja lebih cepat. Operator ini memungkinkan Anda untuk dengan mudah mengatur cabang program dari satu titik di sejumlah besar ranting. Yaitu, terutama diterapkan dengan beberapa kondisi pemeriksaan, ketika kondisi kondisi diperiksa lebih dari dua.

Struktur operator "pilih kasus".

Mari kita lihat seperti apa struktur umum operator dan bertanya-tanya apa itu ( contoh berbeda. Penggunaan kode pribadi akan ditampilkan di akhir artikel):

Pilih kasus [diperiksa] kasus [speced] [beberapa tindakan] kasus lain [beberapa x] end pilih

Sebagai sepotong [Nilai] Anda dapat memasukkan variabel atau properti apa yang nilainya atau Anda dapat memeriksa. Anda juga dapat memeriksa nilai sel tertentu. Pada saat yang sama, mungkin tidak hanya dengan angka, tetapi juga dengan teks. Dan bahkan dengan nilai boolean Benar salah ("Benar" dan "Lie"), apa yang tidak semua tahu.

[Nilai spesifik] - Inilah yang dibandingkan dengan [Nilai Terverifikasi] . Dan, jika seseorang memuaskan yang lain, maka itu dilakukan [Beberapa tindakan] . Ada beberapa opsi untuk merekam untuk blok [Nilai spesifik] . Untuk nilai tekstual dan numerik, Anda dapat merekam nilai yang berbeda melalui koma:

Kasus 3, 4, 5, "Ya", "Tidak"

Untuk angka, Anda dapat memilih rentang:

Kasus 3 hingga 10 "dari 3 hingga 10, termasuk 3 dan 10 sendiri.

Juga untuk angka, Anda dapat menggunakan operator perbandingan logis dengan partikel " AKU S.":

Kasusnya adalah.< 2 "Меньше 2, НЕ включая 2 Case Is = 3 "Равно 3-м. Избыточная запись, достаточно Case 3 Case Is >\u003d 4 "lebih baik sama dengan 4 kasus<> 0 "Tidak sama dengan nol

Ini diizinkan untuk menggunakan operator logis, yang akan memungkinkan untuk menyediakan kasus yang paling sulit dan melakukan perbandingan paralel dengan variabel lain. Selain operator " Atau.", Yang digantikan oleh koma biasa.

Kasus ... dan ... Kasus tidak ...

[Beberapa tindakan] Mungkin benar-benar ada. Jika Anda melewatkannya - untuk kasus ini, program akan tidak aktif. " Kasus. [Nilai spesifik] "Bersama dengan bagian [Beberapa tindakan] Lipat dalam satu blok:

Kasus [nilai spesifik] [beberapa tindakan]

Blok-blok tersebut dapat berupa kuantitas yang akan dimasukkan ke dalam batas dimensi prosedur (itu harus memiliki berat tidak lebih dari 64 kilobyte). Berguna untuk mengetahui bahwa VBA menjelajah kepatuhan [Nilai spesifik] dan [Nilai Nilai] Sepanjang blok dari atas ke bawah. Artinya, Anda dapat memiliki dua blok dengan yang sama " Kasus."Tetapi hanya satu yang sebelumnya akan ditemukan oleh program saat melihat kode dari atas ke bawah.

Kasus lain. - Ini semua kasus lain yang tidak pernah didekati [Nilai spesifik] di semua blok operator " Pilih Kasus."Jika blok" Kasus lain."Tidak ada dan tidak ada blok lain yang didekati, program ini membuat" tidak ada "logis. Kasus lain. Harus menjadi kasus inspeksi terakhir di antara semua blok verifikasi di operator. Setelah itu, blok lain seharusnya tidak, kalau tidak kita akan mendapatkan kesalahan sintaksis " Case withot pilih kasus".

Di akhir operator harus berdiri " Pilih Pilih.", yang berfungsi sebagai" titik "dalam" penawaran "operator.

Contoh penggunaan.

Pertimbangkan beberapa contoh menggunakan kode dan mulai dengan yang paling sederhana. Dalam contoh pertama Tergantung pada nilainya, pesan ditampilkan.

Sub SelectPase_Example_1 () Dim x Panjang x \u003d 1 "Anda dapat mengubah digit ini dan melihat apa yang terjadi. Pilih kasus x Kasus 1 msgbox" Satu "Kasus 2 msgbox 3 msgbox" 3 msgbox "dipilih. Itu berbeda "ujung pilih sub

Contoh kedua. Menunjukkan beberapa jenis nilai rekaman. Tergantung pada jumlah lembaran dalam buku dengan makro, pesan yang berbeda ditampilkan. Harap dicatat bahwa jika lembar di buku 7, maka yang pertama akan bekerja " Kasus 7.", Meskipun kondisinya" Kasus 5 hingga 12"Juga cocok, tetapi nanti.

SUB selectcase_example_2 () "Kami memperkenalkan variabel dan menghitung jumlah lembar dalam buku saat ini: redup x sebagai panjang x \u003d thisworkbook.sheets.Count pilih kasus x" Tergantung pada jumlah lembar dalam buku, kami akan menarik pesan . Kasus 1 "Jika 1 lembar, lalu ... MSGBOX" Satu lembar dalam buku "Kasus 2, 3, 4" Jika lembar 2 atau 3 atau 4 MsgBox "Beberapa lembar dalam buku" Kasus 7 msgbox "Beautiful" Jumlah lembar "Kasus 5 hingga 12" Jika lembar dari 5 hingga 12 msgbox "hampir brosur" adalah\u003e \u003d 14 "Jika lembar lebih atau sama dengan 14 msgbox" Lembar seperti dalam "kasus lain" semua kasus lain, yaitu 13 msgbox "Chestov Dozen Sheets" end Select End Sub

Contoh ketiga. Berfokus pada nilai Boolean Benar.atau Salah. Diperiksa, terlihat atau tersembunyi lembar terbaru dalam buku saat ini dengan makro. Menggunakan usus besar, transfer string dapat diganti untuk mendapatkan kode yang lebih elegan.

Sub selectcase_example_3 () "Kami memperkenalkan variabel dan memberikannya ke lembar terakhir dalam buku: redup shtx sebagai lembar kerja: setx \u003d thisworkbook.sheets (thisworkbook.heets.count) pilih kasus shtx." Periksa apakah lembar tersembunyi atau Bukan Kasus Benar: MsgBox "Daftar terakhir dalam buku yang tersedia" "Jika lembar terakhir adalah kasus yang terlihat palsu: Msgbox" Daftar terakhir dalam buku disembunyikan "" Jika lembar terakhir adalah ujung tersembunyi Select End Sub.

Contoh keempat. menunjukkan bahwa " Kasus.»Ini dapat difokuskan pada variabel lain. DI kasus ini Kami akan memeriksa kesetaraan tiga variabel menggunakan operator logis " Dan.»:

Sub selectcase_example_4 () "Kami memperkenalkan beberapa variabel: redup x%, y%, z%" menyamakan semua ke tiga teratas: x \u003d 3: Y \u003d 3: Z \u003d 3 Pilih kasus Benar "Kami memeriksa kesetaraan semua variabel Z \u003d x dan y \u003d x: msgbox "semua sama" "jika semua sama dengan kasus lain: msgbox" seseorang berbeda "" jika setidaknya seseorang adalah ujung yang berbeda pilih sub akhir

Contoh kelima. Menunjukkan bagaimana melalui koma dalam nilai yang valid untuk " Kasus.»Anda dapat menentukan seluruh set angka. Misalkan ada beberapa fungsi dan kami memeriksa apakah nomor kami dapat digunakan dalam fitur ini. Dengan syarat, kami puas dengan angka-angka dalam kisaran dari 5 (tidak termasuk 5) hingga minus infinity, dari 12 hingga 15, termasuk berakhir dan dari 20 (termasuk 20) \u200b\u200bhingga tak terbatas.

Sub selectcase_example_5 () "Kami memperkenalkan variabel dan memberikannya nilainya redup secara manual sebagai x \u003d inputbox (" masukkan nilai numerik dari variabel x ") pilih kasus x" Periksa apakah beberapa fungsi imajiner cocok untuk kasus ini< 5, Is >\u003d 20, 12 hingga 15 "kisaran nilai MSGS yang sesuai" Nilai aktual untuk beberapa "kasus lain" Nilai MSGBox tidak cocok "Nilai tidak dapat digunakan dalam beberapa fitur" End Select End Sub

Simpul, saya perhatikan bahwa operator " Pilih Kasus."Strukturnya cukup sederhana dan mudah digunakan. Itu kurang fleksibel dibandingkan dengan " Jika ... end."Jika cek diperlukan untuk mengubah nilai yang dapat diverifikasi, tetapi secara signifikan menang dengan berbagai pemeriksaan dari ekspresi yang sama. Apa yang sebenarnya dibuat.

Terima kasih atas perhatiannya.

Artikel dengan contoh-contoh berjumlah Roman "Rioran" Voronov untuk www.syt.