Ngerteni Variabel lan Konstanta ing Macro Excel

Ing artikel iki, sampeyan bakal sinau apa konstanta lan variabel ing macro, ngendi padha bisa digunakake, lan apa prabédan utama antarane macem-macem jinis data. Uga bakal dicethakaké kok konstanta dibutuhake, yen sampeyan mung bisa nulis variabel lan ora ngganti.

Kaya basa pamrograman liyane, data bisa disimpen ing variabel utawa konstanta (loro-lorone uga asring diarani minangka wadhah data). Iki prabédan utama antarane konsep iki. Tilas bisa diganti gumantung apa sing kedadeyan ing program kasebut. Sabanjure, konstanta disetel sapisan lan ora ngganti regane.

Konstanta bisa migunani yen sampeyan kudu nggunakake nilai gedhe sing padha kaping pirang-pirang. Tinimbang nyalin nomer, sampeyan mung bisa nulis jeneng konstanta. Contone, sampeyan bisa nggunakake konstanta "Pi" kanggo nyimpen Pi, yaiku nilai konstan. Iku gedhe banget, lan saben wektu iku cukup angel kanggo nulis utawa nelusuri lan nyalin. Dadi, cukup nulis rong karakter, lan lingkungan kanthi otomatis nggunakake nomer sing dikarepake.

Pangguna Excel kudu ngumumake variabel yen dheweke kudu ngganti nilai sing disimpen saka wektu kanggo wektu. Contone, sampeyan bisa nyetel variabel sing diarani sVAT_Rate, sing bakal nyimpen tarif PPN saiki kanggo produk kasebut. Yen owah-owahan, sampeyan bisa kanthi cepet mbenerake. Iki utamané migunani kanggo wong-wong sing nindakake bisnis ing Amerika Serikat, ing ngendi sawetara barang bisa uga ora kena PPN (lan pajak iki uga beda-beda ing saben negara).

Jinis Data

Saben wadhah data bisa dadi salah siji saka sawetara jinis. Ing ngisor iki tabel sing njlèntrèhaké jinis standar informasi sing diproses. Ana akeh wong, lan bisa uga katon ing wiwitan sing padha mbaleni saben liyane. Nanging iki raos khayalan. Waca terus kanggo mangerteni kenapa nemtokake jinis data sing bener penting banget.

Ora dianjurake kanggo nggunakake jinis data sing njupuk luwih akeh papan ing memori kanggo nomer cilik. Contone, kanggo nomer 1, cukup nggunakake jinis Byte. Iki bakal duwe efek positif ing kinerja modul eksekusi, utamané ing komputer banget. Nanging sing penting ora adoh banget ing kene. Yen sampeyan nggunakake jinis data sing kompak banget, nilai sing gedhe banget bisa uga ora cocog.

Nyatakake Konstanta lan Variabel

Nggunakake wadhah data tanpa nyatakake luwih dhisik ora dianjurake. Banjur sawetara masalah bisa muncul, supaya ora perlu nulis sawetara baris kode cilik kanthi enumerasi variabel utawa konstanta.

Kanggo ngumumake variabel, statement Dim digunakake. Contone, kaya iki:

Dim Variable_Name Minangka Integer

Variable_Name yaiku jeneng variabel. Sabanjure, operator As ditulis, nuduhake jinis data. Tinimbang senar "Variable_Name" lan "Integer", sampeyan bisa nglebokake jeneng lan jinis data sampeyan dhewe.

Konstanta uga bisa diumumake, nanging sampeyan kudu nemtokake regane. Salah sawijining pilihan yaiku:

Const iMaxCount = 5000

Ing keadilan, ing sawetara kasus, sampeyan bisa nindakake tanpa ngumumake variabel, nanging ing kasus iki bakal kanthi otomatis diwenehi jinis Varian. Nanging, iki ora dianjurake kanggo alasan ing ngisor iki:

  1. Varian diproses luwih alon, lan yen ana akeh variabel kasebut, pangolahan informasi bisa kalem banget ing komputer sing ringkih. Koyone detik-detik kasebut bakal mutusake? Nanging yen sampeyan kudu nulis nomer akeh baris kode, lan banjur uga mbukak ing komputer banget (sing isih didol, diwenehi sing Suite kantor modern mbutuhake akèh RAM), sampeyan bisa rampung mungkasi karya. Ana kasus nalika nulis makro sing ora apik nyebabake pembekuan buku cerdas sing duwe RAM cilik lan ora dirancang kanggo nindakake tugas sing rumit. 
  2. Misprints ing jeneng diijini, sing bisa dicegah kanthi nggunakake statement Option Explicit, sing ngidini sampeyan nemokake variabel sing ora dideklarasi, yen ditemokake. Iki minangka cara sing gampang kanggo ndeteksi kesalahan, amarga kesalahan ketik sing paling sithik nyebabake juru basa ora bisa ngenali variabel kasebut. Lan yen sampeyan ngaktifake mode deklarasi variabel, interpreter mung ora ngidini sampeyan mbukak makro yen wadhah data ditemokake sing ora diumumake ing awal modul.
  3. Ngindhari kesalahan sing disebabake dening nilai variabel sing ora cocog karo jinis data. Biasane, menehi nilai teks menyang variabel integer bakal nggawe kesalahan. Ya, ing tangan siji, jinis umum ditugasake tanpa deklarasi, nanging yen diumumake sadurunge, kesalahan acak bisa dihindari.

Mulane, sanajan kabeh, dianjurake kanggo ngumumake kabeh variabel ing makro Excel.

Ana siji bab liyane sing kudu dielingi nalika ngumumake variabel. Sampeyan bisa uga ora nemtokake nilai kanggo variabel nalika ngumumake, nanging ing kasus iki entuk nilai standar. Tuladhane:

  1. Garis digawe kosong.
  2. Nomer njupuk nilai 0.
  3. Variabel jinis Boolean wiwitane dianggep palsu.
  4. Tanggal standar yaiku 30 Desember 1899.

Contone, sampeyan ora perlu menehi nilai 0 menyang variabel integer yen ora ana nilai sing ditemtokake sadurunge. Dheweke wis ngemot nomer iki.

Opsi Eksplisit Statement

Pernyataan iki ngidini sampeyan ngumumake kabeh variabel sing digunakake ing kode VBA lan nemtokake anané wadhah sing ora dideklarasi sadurunge kode diluncurake. Kanggo nggunakake fitur iki, cukup tulis baris kode Eksplisit Pilihan ing sisih ndhuwur kode makro.

Yen sampeyan kudu nyakup statement iki ing kode saben wektu, sampeyan bisa nggunakake setelan khusus ing editor VBA. Kanggo ngaktifake pilihan iki, sampeyan kudu:

  1. Pindhah menyang lingkungan pangembangan ing dalan - Alat> Pilihan.
  2. Ing jendhela sing mbukak sawise iki, bukak tab Editor.
  3. Lan pungkasane, centhang kothak ing jejere item Require Variable Declaration.

Sawise rampung langkah-langkah kasebut, klik tombol "OK". 

Mekaten, saiki nalika nulis saben makro anyar, baris iki bakal dilebokake ing ndhuwur kode kanthi otomatis.

Lingkup Konstanta lan Variabel

Saben variabel utawa konstanta mung nduweni ruang lingkup sing winates. Iku gumantung ing ngendi sampeyan ngumumake.

Upaminipun kita duwe fungsi Total_Biaya(), lan nggunakake variabel sVAT_Rate. Gumantung ing posisi ing modul, bakal duwe ruang lingkup sing beda:

Pilihan Eksplisit

Dim sVAT_Rate Minangka Tunggal

Fungsi Total_Cost () Minangka pindho

.

.

.

Akhir Fungsi

Yen variabel diumumake ing ndhuwur modul dhewe, bakal nyebar ing saindhenging modul kasebut. Tegese, bisa diwaca kanthi saben tata cara.

Menapa malih, yen salah sawijining prosedur ngganti nilai variabel, banjur sing sabanjure uga bakal maca nilai sing didandani iki. Nanging ing modul liyane variabel iki isih ora bakal diwaca.

Pilihan Eksplisit

Fungsi Total_Cost () Minangka pindho

Dim sVAT_Rate Minangka Tunggal

   .

   .

   .

Akhir Fungsi

Ing kasus iki, variabel diumumake ing njero prosedur, lan juru basa bakal nggawe kesalahan yen digunakake ing prosedur liyane.

Yen sampeyan pengin variabel diwaca dening modul liyane, sampeyan kudu nggunakake tembung kunci Umum tinimbang tembung kunci Dim. Kajaba iku, sampeyan bisa matesi orane katrangan saka variabel mung modul saiki nggunakake statement Public, kang ditulis tinimbang tembung Dim.

Sampeyan bisa nyetel ruang lingkup konstanta kanthi cara sing padha, nanging tembung kunci ing kene ditulis bebarengan karo operator Const.

Iki minangka tabel kanthi conto sing apik babagan cara kerjane karo konstanta lan variabel.

Pilihan Eksplisit

sVAT_Rate Umum Minangka Tunggal

Public Const iMax_Count = 5000

Ing conto iki, sampeyan bisa ndeleng carane tembung kunci Public digunakake kanggo ngumumake variabel, lan apa sing kudu ditulis ing editor Visual Basic kanggo wara-wara konstanta umum. Orane katrangan saka kontaner Nilai iki ditrapake kanggo kabeh modul.
Pilihan Eksplisit

sVAT_Rate Pribadi Minangka Tunggal

Private Const iMax_Count = 5000

Ing kene, variabel lan konstanta diumumake nggunakake tembung kunci Pribadi. Iki tegese padha mung bisa katon ing modul saiki, lan tata cara ing modul liyane ora bisa digunakake.

Kenapa konstanta lan variabel dibutuhake

Panggunaan konstanta lan variabel ngidini sampeyan nambah tingkat pemahaman kode kasebut. Lan yen pamula umume ora duwe pitakon babagan kenapa variabel dibutuhake, mula ana akeh ambiguitas babagan kabutuhan konstanta. Lan pitakonan iki misale jek, ing kawitan marketing, cukup logis. Sawise kabeh, sampeyan bisa ngumumake variabel sapisan lan ora bakal ngganti maneh.

Jawaban dadi metu nang endi wae ing bidang padha karo babagan nggunakake jinis data sing manggoni papan gedhe ing memori. Yen kita ngatasi macem-macem variabel, kita bisa kanthi ora sengaja ngganti wadhah sing wis ana. Yen pangguna nemtokake manawa nilai tartamtu ora bakal diganti, mula lingkungan bakal ngontrol iki kanthi otomatis.

Iki penting banget nalika makro ditulis dening sawetara programer. Siji bisa ngerti yen sawetara variabel ora kudu diganti. Lan liyane ora. Yen sampeyan nemtokake operator Const, pangembang liyane bakal ngerti yen nilai iki ora owah.

Utawa, yen ana konstanta kanthi jeneng siji, lan variabel kasebut nduweni jeneng sing beda, nanging padha. Pangembang mung bisa bingung. Contone, siji variabel sing ora perlu diganti diarani Variable11, lan liyane sing bisa diowahi diarani Variable1. Wong bisa kanthi otomatis, nalika nulis kode, ora sengaja ngliwati unit ekstra lan ora sok dong mirsani. Akibaté, wadhah kanggo nilai bakal diganti, sing ora kudu didemek.

Utawa pangembang dhewe bisa lali variabel sing bisa didemek lan ora bisa. Iki asring kedadeyan nalika kode ditulis sawetara minggu, lan ukurane dadi gedhe. Sak iki wektu, iku gampang banget lali malah apa iki utawa variabel iki.

Ya, sampeyan bisa nindakake komentar ing kahanan iki, nanging ora luwih gampang kanggo nemtokake tembung Const?

Serat

Variabel minangka komponen penting saka pemrograman makro, sing ngidini sampeyan nindakake operasi rumit, saka kalkulasi nganti menehi informasi marang pangguna babagan acara tartamtu utawa nemtokake nilai tartamtu ing sel spreadsheet.

Konstanta kudu digunakake yen pangembang ngerti manawa isi wadhah kasebut ora bakal diganti ing mangsa ngarep. Disaranake ora nggunakake variabel tinimbang, amarga bisa uga ora sengaja nggawe kesalahan.

Ninggalake a Reply