VBA väärtus - Kuidas kasutada Exceli VBA Value vara? (Näited)

Lang L: none (table-of-contents)

Exceli VBA väärtuse vara

Väärtus on VBA omadus, mida kasutatakse enamasti vahemiku meetodiga konkreetse vahemiku väärtuse määramiseks, see on VBA sisseehitatud avaldis, näiteks kui kasutame vahemikku ("B3"). Väärtus = 3 määrab selle lahtris B3 väärtuseks 3, mitte tingimata, et seda väärtuse omadust tuleks kasutada ainult vahemiku meetodil, saame seda kasutada ka teiste funktsioonidega.

VBA-ga õppimise alguses on meil nii uudishimulik teada saada, kuidas andmeid lahtritesse salvestada. Kui olete nii uudishimulik, peate mõistma vara „Väärtus“. Selles artiklis selgitame teile atribuudi „Väärtus“, väärtuste sisestamise või määramise, lahtrilt väärtuse hankimise ja paljude muude asjade kohta.

Ühes varasemas artiklis oleme arutanud teemat „VBA Range Cells“. Range objekt aitab meil viidata nii ühele kui ka mitmele lahtrile. Esmalt objekti RANGE kasutamiseks peame otsustama, millise lahtri jaoks peame väärtuse sisestama ja mis on see väärtus, mille me sisestame.

Kuidas VBA-s Väärtusvara kasutada?

Näide # 1 - vahemiku objekt rakkudele väärtuste määramiseks

  • Näiteks kui soovite lahtrisse A1 sisestada väärtuse, siis peaksite lahtrile A1 viitama selle vahemiku järgi („A1”)

Kood:

Alamväärtus () Vahemik ("A1") Lõpp alam
  • Pärast lahtrile viitamist objekti RANGE abil pange nüüd punkt (.), Et näha kõigi selle objektiga seotud omaduste ja meetodite loendit IntelliSense.

Kood:

Alamväärtus () vahemik ("A1"). Lõpeta alam
  • Selle valiku moodustamiseks valige atribuut „VALUE”.

Kood:

Alamväärtus () vahemik ("A1"). Väärtus Lõpp alam
  • Kui atribuut “VALUE” on valitud, peame väärtuse lahtrisse A1 seadma, pannes väärtuse võrdusmärki.

Kood:

Alamväärtus () Vahemik ("A1"). Väärtus = "Tere tulemast VBA-sse" Lõpp-alam
  • Ok, see lisab lahtrisse A1 väärtuse “Welcome to VBA”.
  • Kui soovite sama väärtuse lisada mitmele lahtrile, suunake lahtrid nagu allpool toodud kood.

Kood:

Alamväärtus () vahemik ("A1: A5"). Väärtus = "Tere tulemast VBA-sse" Lõpp-alam
  • See sisestab väärtuse lahtrist A1 kuni A5 .
  • Kui soovite sisestada väärtusi erinevatesse lahtritesse, kuid mitte lahtriseeriatesse, peame kasutama koodi ja lahtri aadressi eraldi argumentides, nagu allpool.

Kood:

Alamväärtus () Vahemik ("A1, A5, B4, C2"). Väärtus = "Tere tulemast VBA-sse" Lõpp-alam
  • See lisab lahtritesse A1, A5, B4 ja C2 teksti “Welcome to VBA” .

Näide # 2 - lisage väärtus, kasutades atribuuti CELLS

Mitte objekti RANGE kaudu, vaid ka VBA CELLS atribuudi abil saame sisestada väärtusi. Kuid üks probleemidest CELLS-i objektiga on see, et me ei pääse IntelliSense'i loendisse juurde nagu saime objekti RANGE jaoks.

Siin peame mainima rea- ja veerunumbrid, mida vajame, lisage väärtus. Näiteks kui soovite sisestada väärtuse lahtrisse A1, on koodiks CELLS (1,1). Kui soovite sisestada väärtuse lahtrisse B5, on koodiks CELLS (5,2), st võrdne lahtriga B5.

Atribuudi CELLS abil ei saa me väärtusi mitmesse lahtrisse sisestada. See on erinevalt meie objektist RANGE.

Näide # 3 - hankige lahtri väärtus

Oleme näinud, kuidas rakkudesse väärtusi sisestada, nüüd näeme, kuidas rakkudelt väärtusi saada.

1. samm: määrake muutuja stringiks.

Kood:

Alamväärtus () Dim K kui stringi lõpu alam

2. samm: määrame selle muutuja “k” jaoks lahtri A1 väärtuse. Lahtrisse A1 olen sisestanud väärtuse “Welcome to VBA.”

Seega on koodiks k = Range (“A1”). Väärtus

Kood:

Alamväärtus () Dim K stringina K = vahemik ("A1"). Väärtus End Sub

3. samm: kuvage muutuja “k” tulemus VBA teatekastis.

Kood:

Alamväärtus () Dim K stringina K = vahemik ("A1"). Väärtus MsgBox K End Sub

Koodi käivitades peaksime lahtrisse A1 vastama tulemuse.

Lahtri A1 andmete saamiseks saame kasutada ka objekti RANGE. Allolev kood näitab teile sama.

Kood:

Alamväärtus () Dim K stringina Määra CellValue = Vahemik ("A1") MsgBox CellValue End Sub

See peaks saama ka lahtris A1 oleva väärtuse.

Näide 4 - vea väärtus, kui on vaja rohkem kui ühte lahtri väärtust

Näiteks vaadake allolevat koodi.

Kood:

Alamväärtus () Dim K As Range Set CellValue = Range ("A1: A5") MsgBox CellValue End Sub

Kui käivitate ülaltoodud koodi, kuvatakse viga „Type Mismatch”.

Põhjus, miks me selle vea saime, sest kui objekti muutuja on seatud rohkem kui ühe lahtri väärtusele, ei saa atribuut tegelikult aru, millise lahtri väärtuse anda, nii et see võib saada ühe lahtri väärtuse korraga.

Huvitavad Artiklid...