VBA-waarde-eigenschap

Excel VBA-waarde-eigenschap

Waarde is een eigenschap in VBA die meestal wordt gebruikt met de bereikmethode om een ​​waarde toe te wijzen aan een specifiek bereik, het is een ingebouwde uitdrukking in VBA, bijvoorbeeld als we bereik ("B3") gebruiken. Waarde = 3 dit zal toewijzen cel B3 een waarde van 3, niet noodzakelijk die value-eigenschap moet worden gebruikt met de enige bereikmethode, we kunnen deze ook met andere functies gebruiken.

Al vroeg in ons leren met VBA zijn we zo benieuwd hoe we de gegevens in de cellen kunnen opslaan. Als u zo nieuwsgierig bent, moet u de eigenschap "Waarde" begrijpen. In dit artikel zullen we u uitleggen over de eigenschap “Waarde”, hoe u waarden invoegt of instelt, hoe u waarde uit de cel haalt en vele andere dingen.

In een van de eerdere artikelen hebben we "VBA Range Cells" besproken. Range-object kan ons helpen om zowel naar een enkele cel als naar meerdere cellen te verwijzen. Om het RANGE-object te gebruiken, moeten we eerst beslissen voor welke cel we de waarde moeten invoegen en wat de waarde is die we gaan invoegen.

Hoe Value Property in VBA te gebruiken?

U kunt deze VBA Value Function Excel-sjabloon hier downloaden - VBA Value Function Excel-sjabloon

Voorbeeld # 1 - Bereikobject om waarden aan cellen toe te wijzen

  • Als u bijvoorbeeld een waarde in de cel A1 wilt invoegen, moet u de cel A1 als volgt verwijzen Bereik ("A1")

Code:

 Sub Waarde () Bereik ("A1") End Sub 

  • Nadat u de cel hebt verwezen met behulp van het RANGE-object, plaatst u nu een punt (.) Om de IntelliSense-lijst te zien met alle eigenschappen en methoden die aan dit object zijn gekoppeld.

Code:

Subwaarde () Bereik ("A1"). Einde Sub

  • Kies uit deze verscheidenheid aan opties de eigenschap "WAARDE".

Code:

 Sub Waarde () Bereik ("A1") Waarde Einde Sub 

  • Zodra de eigenschap "WAARDE" is geselecteerd, moeten we de waarde instellen op cel A1 door de waarde in een gelijkteken te plaatsen.

Code:

 Sub Value () Bereik ("A1"). Value = "Welkom bij VBA" End Sub 

  • Ok, hierdoor wordt de waarde "Welkom bij VBA" in cel A1 ingevoegd.

  • Als u dezelfde waarde in meerdere cellen wilt invoegen, verwijs dan naar de cellen zoals de onderstaande code.

Code:

 Sub Value () Bereik ("A1: A5"). Value = "Welkom bij VBA" End Sub 
  • Hiermee wordt de waarde van de cel A1 tot A5 ingevoegd .

  • Als u waarden in verschillende cellen wilt invoegen, maar niet voor reeksen van de cel, dan moeten we code en het celadres gebruiken in afzonderlijke argumenten zoals hieronder.

Code:

 Sub Value () Range ("A1, A5, B4, C2"). Value = "Welkom bij VBA" End Sub 
  • Hierdoor wordt de tekst "Welkom bij VBA" ingevoegd in de cellen A1, A5, B4 en C2 .

Voorbeeld # 2 - Waarde invoegen met de eigenschap CELLS

Niet via het RANGE-object, maar ook met behulp van de VBA CELLS-eigenschap kunnen we waarden invoegen. Maar een van de problemen met het CELLS-object is dat we geen toegang krijgen tot de IntelliSense-lijst zoals we hebben gekregen voor het RANGE-object.

Hier moeten we de rij- en kolomnummers vermelden die we nodig hebben om de waarde in te voegen. Als u bijvoorbeeld de waarde in cel A1 wilt invoegen, is de code CELLS (1,1), als u de waarde in cel B5 wilt invoegen, is de code CELLS (5,2), dwz gelijk aan B5 cel.

We kunnen geen waarden in meerdere cellen invoegen met behulp van de eigenschap CELLS, dit is in tegenstelling tot ons RANGE-object.

Voorbeeld # 3 - Celwaarde ophalen

We hebben gezien hoe we waarden in de cellen kunnen invoegen, nu zullen we zien hoe we waarden uit cellen kunnen halen.

Stap 1: definieer een variabele als String.

Code:

 Sub Waarde () Dim K As String End Sub 

Stap 2: Voor deze variabele “k” zullen we de waarde van de cel A1 toekennen. In cel A1 heb ik de waarde "Welkom bij VBA" ingevoerd.

De code is dus k = Bereik ("A1") Waarde

Code:

 Sub Waarde () Dim K As String K = Bereik ("A1") Waarde End Sub 

Stap 3: Toon het resultaat van de variabele "k" in het VBA-berichtvenster.

Code:

 Sub Waarde () Dim K As String K = Bereik ("A1") Waarde MsgBox K End Sub 

Door de code uit te voeren, moeten we het resultaat van cel A1-waarde in het berichtvenster weergeven.

We kunnen ook het RANGE-object gebruiken om de gegevens van cel A1 op te halen, onderstaande code zal u hetzelfde laten zien.

Code:

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

Dit zou ook de waarde van de cel A1 in het berichtvak moeten krijgen.

Voorbeeld 4 - Foutwaarde als meer dan één celwaarde vereist is

Kijk voor een voorbeeld naar de onderstaande code.

Code:

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

Als u de bovenstaande code uitvoert, krijgen we de foutmelding "Type Mismatch".

De reden waarom we deze fout krijgen, is dat wanneer de objectvariabele die is ingesteld op meer dan één cel, de "waarde" -eigenschap niet echt begrijpt welke celwaarde moet worden gegeven, dus het kan een enkele celwaarde tegelijk krijgen.