VBA vertė - Kaip naudoti „Excel VBA Value“ nuosavybę? (Pavyzdžiai)

„Excel VBA Value“ nuosavybė

Vertė yra VBA ypatybė, kuri dažniausiai naudojama naudojant diapazono metodą, kad priskirtumėte vertę konkrečiam diapazonui, tai yra VBA integruota išraiška, pavyzdžiui, jei mes naudojame diapazoną („B3“). Reikšmė = 3 tai priskirs langelio B3 vertė yra 3, nebūtinai ta vertės ypatybė turi būti naudojama tik naudojant diapazono metodą, kurį galime naudoti ir su kitomis funkcijomis.

Ankstyvai mokydamiesi su VBA, mums taip įdomu sužinoti, kaip kaupti duomenis ląstelėse. Jei esate toks smalsus, turite suprasti nuosavybės vertę. Šiame straipsnyje paaiškinsime jums apie ypatybę „Vertė“, kaip įterpti ar nustatyti reikšmes, kaip gauti vertę iš langelio ir daugelį kitų dalykų.

Viename iš ankstesnių straipsnių aptarėme „VBA Range Cells“. Diapazono objektas gali padėti mums nurodyti vieną langelį ir kelias langelius. Norėdami pirmiausia naudoti objektą RANGE, turime nuspręsti, kurioje langelyje turime įterpti vertę ir kokia yra vertė, kurią ketiname įterpti.

Kaip naudoti „Value Property“ VBA?

1 pavyzdys - diapazono objektas priskirti vertes ląstelėms

  • Pvz., Jei norite įterpti reikšmę į langelį A1, turėtumėte nurodyti langelį A1 kaip šį diapazoną („A1“)

Kodas:

Sub vertė () Diapazonas ("A1") Pabaiga Sub
  • Nurodę langelį naudodami objektą RANGE, dabar įdėkite tašką (.), Kad pamatytumėte visų su šiuo objektu susijusių ypatybių ir metodų „IntelliSense“ sąrašą.

Kodas:

Papildomos vertės () diapazonas („A1“). Pabaigos sub
  • Suformuokite šią parinkčių įvairovę, pasirinkite nuosavybę „VALUE“.

Kodas:

Papildomos vertės () diapazonas („A1“). Reikšmė Pabaigos sub
  • Pasirinkę ypatybę „VALUE“, turime nustatyti langelio A1 vertę, įterpdami vertę į lygybės ženklą.

Kodas:

Papildomos vertės () diapazonas („A1“). Reikšmė = „Sveiki atvykę į VBA“ Pabaiga
  • Gerai, į langelį A1 bus įterpta reikšmė „Sveiki atvykę į VBA“.
  • Jei norite tą pačią vertę įterpti į kelias langelius, nurodykite langelius kaip žemiau pateiktą kodą.

Kodas:

Sub reikšmė () Diapazonas ("A1: A5"). Reikšmė = "Sveiki atvykę į VBA" Pabaigos sub
  • Tai įterps vertę iš langelio A1 į A5 .
  • Jei norite įterpti reikšmes į skirtingas langelius, bet ne į langelio serijas, tada kodą ir langelio adresą turime naudoti atskirais argumentais, pavyzdžiui, žemiau.

Kodas:

Papildomos vertės () diapazonas ("A1, A5, B4, C2"). Reikšmė = "Sveiki atvykę į VBA" Pabaiga
  • Tai įterps tekstą „Sveiki atvykę į VBA“ į langelius A1, A5, B4 ir C2 .

2 pavyzdys - įterpkite reikšmę naudodami CELLS ypatybę

Ne per objektą RANGE, bet ir naudodami VBA CELLS ypatybę, galime įterpti reikšmes. Tačiau viena iš CELLS objekto problemų yra tai, kad mes negalime pasiekti „IntelliSense“ sąrašo, kaip mes gavome objektui RANGE.

Čia turime paminėti eilučių ir stulpelių numerius, kuriems reikia įterpti vertę. Pvz., Jei norite įterpti reikšmę į langelį A1, tada kodas yra CELLS (1,1). Jei norite įterpti reikšmę į langelį B5, kodas yra CELLS (5,2), ty lygus B5 langeliui.

Naudodami CELLS ypatybę, negalime įterpti verčių į kelias langelius. Tai nepanašu į mūsų objektą RANGE.

3 pavyzdys - gaukite langelio vertę

Mes matėme, kaip į langelius įterpti reikšmes, dabar pamatysime, kaip gauti vertes iš ląstelių.

1 veiksmas: apibrėžkite kintamąjį kaip eilutę.

Kodas:

Sub vertė () Dim K kaip eilutės pabaigos sub

2 žingsnis: Šiam kintamajam „k“ priskirsime langelio A1 vertę. A1 langelyje įrašiau vertę „Sveiki atvykę į VBA“.

Taigi kodas bus k = Range („A1“). Reikšmė

Kodas:

Sub reikšmė () Dim K kaip eilutė K = diapazonas ("A1"). Reikšmė Pabaiga Sub

3 žingsnis: VBA pranešimų laukelyje parodykite kintamojo „k“ rezultatą.

Kodas:

Sub reikšmė () Dim K kaip eilutė K = diapazonas ("A1"). Reikšmė MsgBox K End Sub

Paleisdami kodą, turėtume pranešimo laukelyje pateikti langelio A1 reikšmę.

Mes taip pat galime naudoti objektą RANGE, kad gautume langelio A1 duomenis. Žemiau pateiktas kodas jums parodys tą patį.

Kodas:

Sub reikšmė () Dim K kaip eilutė Nustatykite CellValue = Diapazonas ("A1") MsgBox CellValue Pabaiga Sub

Tai taip pat turėtų gauti langelio A1 reikšmę pranešimo laukelyje.

4 pavyzdys - klaidos vertė, jei reikia daugiau nei vienos langelio vertės

Pavyzdžiui, pažvelkite į žemiau pateiktą kodą.

Kodas:

Sub reikšmė () Dim K As Range Set CellValue = Range ("A1: A5") MsgBox CellValue End Sub

Jei paleisite pirmiau nurodytą kodą, gausime klaidą „Tipo neatitikimas“.

Priežastis, kodėl mes gauname šią klaidą, nes kai objekto kintamasis nustatomas į daugiau nei vienos langelio „reikšmę“, ypatybė iš tikrųjų nesupranta, kurios langelio reikšmę reikia pateikti, todėl vienu metu ji gali gauti vienos langelio vertę.

Įdomios straipsniai...