Hodnota VBA - Ako používať vlastnosť hodnoty Excel VBA? (Príklady)

Vlastnosť hodnoty Excel VBA

Hodnota je vlastnosť vo VBA, ktorá sa väčšinou používa pri metóde rozsahu na priradenie hodnoty konkrétnemu rozsahu. Je to vstavaný výraz vo VBA, napríklad ak použijeme rozsah („B3“). Value = 3 toto priradí bunka B3 hodnotu 3, nemusí sa nevyhnutne táto hodnota používať iba pri metóde rozsahu, môžeme ju použiť aj pri iných funkciách.

Na začiatku nášho učenia sa pomocou VBA nás veľmi zaujíma, ako sa ukladajú údaje do buniek. Ak ste zvedaví, musíte pochopiť vlastnosť „Hodnota“. V tomto článku vám vysvetlíme vlastnosti „Hodnota“, ako vkladať alebo nastavovať hodnoty, ako získať hodnotu z bunky a mnoho ďalších vecí.

V jednom z predchádzajúcich článkov sme diskutovali o „bunkách rozsahu VBA“. Objekt rozsahu nám môže pomôcť odkázať na jednu aj viac buniek. Aby sme najskôr mohli použiť objekt RANGE, musíme sa rozhodnúť, do ktorej bunky potrebujeme vložiť hodnotu a akú hodnotu vložíme.

Ako používať Value Property vo VBA?

Príklad č. 1 - Objekt rozsahu na priradenie hodnôt bunkám

  • Napríklad, ak chcete vložiť hodnotu do bunky A1, mali by ste bunku A1 označiť ako tento rozsah („A1“)

Kód:

Sub Value () Range ("A1") End Sub
  • Po sprostredkovaní bunky pomocou objektu RANGE teraz vložte bodku (.), Aby ste videli zoznam IntelliSense všetkých vlastností a metód spojených s týmto objektom.

Kód:

Rozsah podhodnoty () ("A1"). Koniec Sub
  • Ak chcete vytvoriť túto rozmanitosť možností, vyberte vlastnosť „HODNOTA“.

Kód:

Rozsah čiastkovej hodnoty () ("A1"). Hodnota Koniec čiastkovej hodnoty
  • Keď je vybratá vlastnosť „VALUE“, musíme nastaviť hodnotu na bunku A1 vložením hodnoty do rovnakého znamienka.

Kód:

Rozsah podhodnoty () ("A1"). Hodnota = "Vitajte vo VBA" Koniec pod
  • Dobre, týmto sa do bunky A1 vloží hodnota „Vitajte vo VBA“.
  • Ak chcete vložiť rovnakú hodnotu do viacerých buniek, odkazujte na bunky ako v nasledujúcom kóde.

Kód:

Rozsah podhodnoty () ("A1: A5"). Hodnota = "Vitajte vo VBA" Koniec pod
  • Týmto sa vloží hodnota z bunky A1 do A5 .
  • Ak chcete vložiť hodnoty do rôznych buniek, ale nie do sérií buniek, potom musíme použiť kód a adresu bunky v samostatných argumentoch, ako je uvedené nižšie.

Kód:

Rozsah podhodnoty () ("A1, A5, B4, C2"). Hodnota = "Vitajte vo VBA" End Sub
  • Týmto sa do buniek A1, A5, B4 a C2 vloží text „Vitajte vo VBA“ .

Príklad č. 2 - Vložte hodnotu pomocou vlastnosti CELLS

Nie prostredníctvom objektu RANGE, ale aj pomocou vlastnosti VBA CELLS, môžeme vkladať hodnoty. Ale jeden z problémov s objektom CELLS je, že nezískame prístup k zoznamu IntelliSense, aký sme dostali pre objekt RANGE.

Tu musíme spomenúť čísla riadkov a stĺpcov, do ktorých potrebujeme vložiť hodnotu. Napríklad, ak chcete vložiť hodnotu do bunky A1, potom je kód CELLS (1,1). Ak chcete vložiť hodnotu do bunky B5, potom je kód CELLS (5,2), tj. Rovná sa bunke B5.

Nemôžeme vložiť hodnoty do viacerých buniek pomocou vlastnosti CELLS. Toto je na rozdiel od nášho objektu RANGE.

Príklad č. 3 - Získajte hodnotu bunky

Videli sme, ako vkladať hodnoty do buniek, teraz uvidíme, ako získať hodnoty z buniek.

Krok 1: Definujte premennú ako String.

Kód:

Podhodnota () Dim K ako reťazec Koniec pod

Krok 2: Tejto premennej „k“ priradíme hodnotu bunky A1. V bunke A1 som zadal hodnotu „Vitajte vo VBA.“

Takže kód bude k = Rozsah („A1“). Hodnota

Kód:

Podhodnota () Dim K ako reťazec K = rozsah ("A1"). Hodnota Koniec pod

Krok 3: Zobrazte výsledok premennej „k“ v okne správy VBA.

Kód:

Sub Value () Dim K As String K = Range ("A1"). Hodnota MsgBox K End Sub

Spustením kódu by sme mali byť výsledkom hodnoty bunky A1 v okne správy.

Na získanie údajov bunky A1 môžeme použiť aj objekt RANGE. To isté vám ukáže aj nižšie uvedený kód.

Kód:

Subhodnota () Dim K As String Set CellValue = Range ("A1") MsgBox CellValue End Sub

To by malo tiež získať hodnotu bunky A1 v okne správy.

Príklad 4 - Chybná hodnota, ak sa vyžaduje viac ako jedna hodnota bunky

Napríklad si pozrite nasledujúci kód.

Kód:

Subhodnota () Dim K ako rozsah Nastavená CellValue = rozsah ("A1: A5") MsgBox CellValue End Sub

Ak spustíte vyššie uvedený kód, zobrazí sa chyba „Nesúlad typu“.

Dôvod, prečo sa zobrazuje táto chyba, pretože keď je premenná objektu nastavená na viac ako jednu „hodnotu“ bunky, vlastnosť skutočne nechápe, ktorá hodnota bunky sa má dať, takže môže naraz získať jednu hodnotu bunky.

Zaujímavé články...