Skilningur á breytum og stöðugum í Excel fjölvi

Í þessari grein muntu læra hvaða fastar og breytur eru í fjölvi, hvar er hægt að nota þær og hver er aðalmunurinn á mismunandi gagnagerðum. Það mun líka koma í ljós hvers vegna fasta er þörf, ef þú getur bara skrifað breytu og aldrei breytt henni.

Eins og önnur forritunarmál er hægt að geyma gögn í breytum eða föstum (sem báðar eru einnig oft nefndar gagnaílát). Þetta er aðalmunurinn á þessum hugtökum. Hið fyrra getur breyst eftir því sem gerist í forritinu. Aftur á móti eru fastar settir einu sinni og breyta ekki gildi þeirra.

Stöður geta verið gagnlegar ef þú þarft að nota sama stóra gildið mörgum sinnum. Í stað þess að afrita töluna geturðu einfaldlega skrifað nafn fastans. Til dæmis geturðu notað fastann „Pi“ til að geyma Pi, sem er fast gildi. Það er mjög stórt og í hvert skipti er frekar erfitt að skrifa það eða leita og afrita það. Og svo er nóg að skrifa tvo stafi og umhverfið notar sjálfkrafa viðkomandi númer.

Excel notandi þarf að gefa upp breytur ef hann þarf að breyta gildinu sem geymt er í þeim af og til. Til dæmis er hægt að stilla breytu sem kallast sVAT_Rate, sem geymir núverandi VSK-hlutfall fyrir vöruna. Ef það breytist geturðu fljótt leiðrétt það. Þetta er sérstaklega gagnlegt fyrir þá sem stunda viðskipti í Bandaríkjunum, þar sem sumar vörur eru alls ekki virðisaukaskattsskyldar (og þessi skattur er líka mismunandi eftir ríkjum).

Gagnategundir

Hvert gagnageymir getur verið ein af nokkrum gerðum. Hér er tafla sem lýsir stöðluðum gerðum unninna upplýsinga. Þeir eru margir og byrjandi kann að virðast í upphafi að þeir endurtaki hver annan. En þetta er blekking tilfinning. Lestu áfram til að læra hvers vegna það er svo mikilvægt að tilgreina rétta gagnategundina.

Ekki er mælt með því að nota gagnategund sem tekur meira pláss í minni fyrir litlar tölur. Til dæmis, fyrir töluna 1, er nóg að nota Byte tegundina. Þetta mun hafa jákvæð áhrif á frammistöðu executable einingarinnar, sérstaklega á veikar tölvur. En hér er mikilvægt að ganga ekki of langt. Ef þú notar gagnategund sem er of þétt gæti verið að of stórt gildi passi ekki inn í hana.

Að lýsa yfir stöðugum og breytum

Það er eindregið bannað að nota gagnaílát án þess að lýsa því yfir. Þá geta ýmis vandamál komið upp, til að forðast þau er nauðsynlegt að skrifa nokkrar litlar kóðalínur með upptalningu á breytum eða föstum.

Til að lýsa yfir breytu er Dim setningin notuð. Til dæmis, svona:

Dimmt Variable_Name Sem heiltala

Variable_Name er nafn breytunnar. Næst er As operatorinn skrifaður sem gefur til kynna gagnategundina. Í stað strengjanna „Variable_Name“ og „Integer“ geturðu sett inn eigið nafn og gagnategund.

Einnig er hægt að lýsa yfir stöðugum, en þú verður fyrst að tilgreina gildi þeirra. Einn af valkostunum er:

Const iMaxCount = 5000

Í sanngirni, í sumum tilfellum er hægt að gera það án þess að lýsa yfir breytu, en í þessu tilfelli verður þeim sjálfkrafa úthlutað gerðinni Variant. Hins vegar er ekki mælt með þessu af eftirfarandi ástæðum:

  1. Afbrigði er unnið mun hægar og ef það eru margar slíkar breytur getur vinnsla upplýsinga hægst verulega á veikum tölvum. Það virðist sem þessar sekúndur muni ráða úrslitum? En ef þú þarft að skrifa fjöldann allan af kóðalínum og keyra hann svo á veikum tölvum (sem eru enn seldar, í ljósi þess að nútíma skrifstofusvítur þurfa mikið vinnsluminni) geturðu stöðvað verkið algjörlega. Það eru tilvik þar sem vanhugsuð ritun á fjölvi leiddi til frystingar á snjallbókum sem hafa lítið magn af vinnsluminni og eru ekki hönnuð til að framkvæma flókin verkefni. 
  2. Prentvillur í nöfnum eru leyfðar, sem hægt er að koma í veg fyrir með því að nota Option Explicit statement, sem gerir þér kleift að finna ótilgreinda breytu, ef hún finnst. Þetta er auðveld leið til að greina villur, þar sem minnsta innsláttarvilla veldur því að túlkurinn getur ekki greint breytuna. Og ef þú kveikir á breytuyfirlýsingarhamnum mun túlkurinn einfaldlega ekki leyfa þér að keyra fjölvi ef gagnaílát finnast sem ekki var lýst yfir strax í byrjun einingarinnar.
  3. Forðastu villur af völdum breytugilda sem passa ekki við gagnagerðina. Venjulega mun það valda villu ef úthlutað er textagildi við heiltölubreytu. Já, annars vegar er almennri gerð úthlutað án yfirlýsingar, en ef þeim er lýst yfir fyrirfram er hægt að forðast tilviljunarkenndar villur.

Þess vegna, þrátt fyrir allt, er mjög mælt með því að lýsa yfir öllum breytum í Excel fjölvi.

Það er eitt í viðbót sem þarf að hafa í huga þegar verið er að lýsa yfir breytum. Það er hægt að tengja engin gildi á breytu þegar hún er lýst yfir, en í þessu tilviki fær hún sjálfgefið gildi. Til dæmis:

  1. Línur eru gerðar tómar.
  2. Tölurnar taka á sig gildið 0.
  3. Breytur af gerðinni Boolean eru upphaflega taldar rangar.
  4. Sjálfgefin dagsetning er 30. desember 1899.

Til dæmis þarftu ekki að úthluta gildinu 0 á heiltölubreytu ef ekkert gildi var áður tilgreint. Hún hefur nú þegar þetta númer.

Valkostur skýr yfirlýsing

Þessi setning gerir þér kleift að lýsa yfir öllum breytunum sem eru notaðar í VBA kóðanum og ákvarða tilvist ótilgreindra gáma áður en kóðinn er keyrður. Til að nota þennan eiginleika skaltu einfaldlega skrifa línu af Option Explicit kóða efst í fjölkóðanum.

Ef þú þarft að hafa þessa yfirlýsingu með í kóðanum þínum í hvert skipti, geturðu gert það með því að nota sérstaka stillingu í VBA ritlinum. Til að virkja þennan valkost verður þú að:

  1. Farðu í þróunarumhverfið á leiðinni – Verkfæri > Valkostir.
  2. Í glugganum sem opnast eftir þetta, opnaðu Editor flipann.
  3. Og að lokum skaltu haka í reitinn við hliðina á hlutnum Krefjast breytuyfirlýsingar.

Þegar þessum skrefum er lokið skaltu smella á „Í lagi“ hnappinn. 

Það er það, núna þegar þú skrifar hvert nýtt fjölvi verður þessi lína sett inn efst í kóðann sjálfkrafa.

Umfang stöðugra og breyta

Hver breyta eða fasti hefur aðeins takmarkað umfang. Það fer eftir því hvar þú lýstir því yfir.

Segjum að við höfum fall Heildar kostnaður(), og það notar breytuna sVAT_Rate. Það fer eftir stöðu í einingunni, það mun hafa mismunandi umfang:

Valkostur skýr

Dimmt sVAT_Rate As Single

Fall Total_Cost() Sem tvöfaldur

.

.

.

Endir Fall

Ef breyta er lýst yfir efst á einingu sjálfri breiðist hún út um alla einingu. Það er, það er hægt að lesa það með hverri aðferð.

Þar að auki, ef ein af aðferðunum breytti gildi breytunnar, þá mun sú næsta einnig lesa þetta leiðrétta gildi. En í öðrum einingum verður þessi breyta samt ekki lesin.

Valkostur skýr

Fall Total_Cost() Sem tvöfaldur

Dimmt sVAT_Rate As Single

   .

   .

   .

Endir Fall

Í þessu tilviki er breytan lýst inni í málsmeðferðinni og túlkurinn mun kasta villu ef hún er notuð í öðru ferli.

Ef þú vilt að breytan sé lesin af öðrum einingum verður þú að nota almennt lykilorð í stað Dim lykilorðsins. Á sama hátt geturðu takmarkað umfang breytu við aðeins núverandi einingu með því að nota Public yfirlýsinguna, sem er skrifuð í stað orðsins Dim.

Hægt er að stilla umfang fasta á svipaðan hátt, en lykilorðið hér er skrifað ásamt Const rekstraraðilanum.

Hér er tafla með góðu dæmi um hvernig það virkar með fasta og breytur.

Valkostur skýr

Opinber sVAT_Rate As Single

Public Const iMax_Count = 5000

Í þessu dæmi geturðu séð hvernig Public lykilorðið er notað til að lýsa yfir breytu og hvað þú þarft að skrifa í Visual Basic ritlinum til að lýsa yfir opinberum fasta. Umfang þessara gildisíláta á við um allar einingar.
Valkostur skýr

Einka sVAT_Rate As Single

Private Const iMax_Count = 5000

Hér eru breytur og fastar lýstar yfir með því að nota Private leitarorðið. Þetta þýðir að þær sjást aðeins í núverandi einingu og verklagsreglur í öðrum einingum geta ekki notað þær.

Hvers vegna þarf fasta og breytur

Notkun fasta og breyta gerir þér kleift að auka skilning á kóðanum. Og ef byrjendur almennt hafa ekki spurningar um hvers vegna þörf er á breytum, þá eru margir óljósir varðandi þörfina fyrir fasta. Og þessi spurning virðist, við fyrstu sýn, alveg rökrétt. Þegar öllu er á botninn hvolft geturðu lýst yfir breytu einu sinni og aldrei breytt henni aftur.

Svarið reynist vera einhvers staðar á sama plani og varðandi notkun gagnategunda sem taka mikið pláss í minni. Ef við erum að fást við gríðarlega marga breytur getum við óvart breytt núverandi íláti. Ef notandinn mælir fyrir um að ákveðið gildi breytist aldrei, þá stjórnar umhverfið þessu sjálfkrafa.

Þetta er sérstaklega mikilvægt þegar fjölvi er skrifað af nokkrum forriturum. Maður veit kannski að einhver breyta ætti ekki að breytast. Og hitt er það ekki. Ef þú tilgreinir Const rekstraraðila, mun annar verktaki vita að þetta gildi breytist ekki.

Eða ef það er fasti með einu nafni og breytan hefur annað en svipað nafn. Framkvæmdaraðilinn getur einfaldlega ruglað þá. Til dæmis er ein breyta sem ekki þarf að breyta kölluð Variable11 og önnur sem hægt er að breyta heitir Variable1. Maður getur sjálfkrafa, þegar þú skrifar kóða, óvart sleppt aukaeiningu og ekki tekið eftir því. Fyrir vikið verður ílátinu fyrir gildi breytt, sem ekki ætti að snerta.

Eða verktaki sjálfur gæti gleymt hvaða breytum hann getur snert og hverjar ekki. Þetta gerist oft þegar kóðinn er skrifaður í nokkrar vikur og stærð hans verður stór. Á þessum tíma er mjög auðvelt að gleyma jafnvel hvað þessi eða hin breytan þýðir.

Já, þú getur gert athugasemdir við þessar aðstæður, en er ekki auðveldara að tilgreina orðið Const?

Ályktanir

Breytur eru nauðsynlegur hluti af þjóðhagsforritun, sem gerir þér kleift að framkvæma flóknar aðgerðir, allt frá útreikningum til að upplýsa notandann um ákveðna atburði eða tilgreina ákveðin gildi í frumum töflureikni.

Nota skal fasta ef verktaki veit fyrir víst að innihald þessara íláta mun ekki breytast í framtíðinni. Mælt er með því að nota ekki breytur í staðinn þar sem það er hægt að gera mistök fyrir slysni.

Skildu eftir skilaboð