VBA-värde - Hur använder jag Excel VBA Value Property? (Exempel)

Innehållsförteckning

Excel VBA Value Property

Värde är en egenskap i VBA som mest används med områdesmetoden för att tilldela ett värde till ett visst område, det är ett inbyggt uttryck i VBA, till exempel om vi använder intervall (“B3”). Värde = 3 kommer detta att tilldela cell B3 ett värde på 3, inte nödvändigtvis att värdegenskapen ska användas med endast intervallmetoden, vi kan också använda den med andra funktioner.

Tidigt i vårt lärande med VBA är vi så nyfikna på att lära oss hur man lagrar data i cellerna. Om du är så nyfiken, måste du förstå egenskapen "Värde". I den här artikeln kommer vi att förklara för dig om "Value" -egenskap, hur man sätter in eller ställer in värden, hur man får värde från cellen och många andra saker.

I en av de tidigare artiklarna har vi diskuterat "VBA Range Cells." Områdesobjekt kan hjälpa oss att hänvisa till en enda cell såväl som flera celler. För att använda RANGE-objektet först måste vi bestämma för vilken cell vi behöver infoga värdet och vad är värdet vi ska infoga.

Hur använder jag Value Property i VBA?

Exempel # 1 - Områdeobjekt för att tilldela celler värden

  • Om du till exempel vill infoga ett värde i cellen A1, bör du hänvisa cellen A1 så här området ("A1")

Koda:

Subvärde () Område ("A1") Slut Sub
  • Efter att ha hänvisat cellen med RANGE-objektet, sätt nu en punkt (.) För att se IntelliSense-listan över alla egenskaper och metoder som är associerade med detta objekt.

Koda:

Undervärde () Område ("A1"). Avsluta sub
  • Forma denna mängd olika alternativ, välj egenskapen "VALUE".

Koda:

Sub Value () Range ("A1"). Value End Sub
  • När egenskapen "VALUE" har valts måste vi ställa in värdet till cellen A1 genom att sätta värdet i lika tecken.

Koda:

Undervärde () Område ("A1") Värde = "Välkommen till VBA" Slutunder
  • Ok, detta infogar värdet "Välkommen till VBA" i cellen A1.
  • Om du vill infoga samma värde i flera celler hänvisar du cellerna som nedanstående kod.

Koda:

Sub Value () Range ("A1: A5"). Value = "Welcome to VBA" End Sub
  • Detta infogar värdet från cellen A1 till A5 .
  • Om du vill infoga värden i olika celler men inte för serier i cellen måste vi använda kod och celladress i separata argument som nedan.

Koda:

Sub Value () Range ("A1, A5, B4, C2"). Value = "Welcome to VBA" End Sub
  • Detta infogar texten "Välkommen till VBA" i cellerna A1, A5, B4 och C2- celler.

Exempel # 2 - Infoga värde med CELLS-egenskap

Inte genom RANGE-objektet utan även med VBA CELLS-egenskapen kan vi infoga värden. Men ett av problemen med CELLS-objektet är att vi inte får tillgång till IntelliSense-listan som vi fick för RANGE-objektet.

Här måste vi nämna rad- och kolumnnumren vi behöver infoga värdet. Om du till exempel vill infoga värdet i cellen A1 är koden CELLS (1,1). Om du vill infoga värdet i cellen B5 är koden CELLS (5,2), dvs lika med B5-cellen.

Vi kan inte infoga värden i flera celler genom att använda CELLS-egenskapen. Detta skiljer sig från vårt RANGE-objekt.

Exempel # 3 - Få cellvärde

Vi har sett hur man sätter in värden i cellerna, nu kommer vi att se hur man får värden från celler.

Steg 1: Definiera en variabel som sträng.

Koda:

Subvärde () Dim K Som strängändsub

Steg 2: För den här variabeln "k" tilldelar vi värdet på cellen A1. I cell A1 har jag angett värdet "Välkommen till VBA."

Så koden blir k = Range (“A1”). Värde

Koda:

Delvärde () Dim K som sträng K = intervall ("A1")

Steg 3: Visa resultatet av variabeln "k" i VBA-meddelanderutan.

Koda:

Delvärde () Dim K Som sträng K = Område ("A1"). Värde MsgBox K Slut Sub

Genom att köra koden bör vi resultatet av cell A1-värdet i meddelandefältet.

Vi kan också använda RANGE-objektet för att få data från cellen A1. Koden nedan visar dig samma sak.

Koda:

Subvärde () Dim K som stränguppsättning CellValue = Range ("A1") MsgBox CellValue End Sub

Detta bör också få värdet för cellen A1 i meddelandefältet.

Exempel 4 - Felvärde om mer än ett cellvärde krävs

Titta till exempel på koden nedan.

Koda:

Subvärde () Dim K som intervall Ställ in CellValue = Range ("A1: A5") MsgBox CellValue End Sub

Om du kör ovanstående kod får vi felmeddelandet "Type Mismatch".

Anledningen till att vi får det här felet för att när objektvariabeln är inställd på mer än ett cellvärde förstår egenskapen inte riktigt vilket cellvärde som ska ges, så det kan få ett enda cellvärde åt gången.

Intressanta artiklar...