VBA-arvo | Kuinka käyttää Excel VBA Value -ominaisuutta? (Esimerkkejä)

Excelin VBA-arvo-ominaisuus

Arvo on VBA: n ominaisuus, jota käytetään enimmäkseen aluemenetelmässä arvon määrittämiseksi tietylle alueelle, se on sisäänrakennettu lauseke VBA: ssa, esimerkiksi jos käytämme aluetta ("B3"). Arvo = 3 tämä antaa solun B3 arvo 3, ei välttämättä sitä, että arvo-ominaisuutta on käytettävä vain alue-menetelmällä, voimme käyttää sitä myös muiden toimintojen kanssa.

VBA-oppimisen alkuvaiheessa olemme niin uteliaita oppimaan, miten tietoja tallennetaan soluihin. Jos olet niin utelias, sinun on ymmärrettävä arvo-ominaisuus. Tässä artikkelissa selitämme sinulle "Arvo" -ominaisuudesta, kuinka lisätä tai asettaa arvoja, kuinka saada arvoa solusta ja monista muista asioista.

Yhdessä aikaisemmista artikkeleista olemme keskustelleet "VBA-sarjan soluista". Alueobjekti voi auttaa meitä viittaamaan yhteen soluun sekä useaan soluun. RANGE-objektin käyttämiseksi meidän on ensin päätettävä, mihin soluun meidän on lisättävä arvo ja mikä on arvo, jonka aiomme lisätä.

Kuinka käyttää Value Propertyia VBA: ssa?

Voit ladata tämän VBA Value Function Excel -mallin täältä - VBA Value Function Excel -malli

Esimerkki # 1 - Range Object määrittää arvot soluille

  • Esimerkiksi, jos haluat lisätä arvon soluun A1, sinun tulee viitata soluun A1 kuten tämä alue (“A1”)

Koodi:

 Aliarvo () Alue ("A1") Loppu alim 

  • Kun olet viitannut soluun RANGE-objektia käyttämällä, laita nyt piste (.) Nähdäksesi IntelliSense-luettelon kaikista tähän objektiin liittyvistä ominaisuuksista ja menetelmistä.

Koodi:

Aliarvon () alue ("A1"). End Sub

  • Muodosta tästä vaihtoehtovalikosta ominaisuus VALUE.

Koodi:

 Aliarvo () -alue ("A1"). Arvo Loppu Alim 

  • Kun "VALUE" -ominaisuus on valittu, meidän on asetettava arvo soluksi A1 asettamalla arvo yhtäsuuruuteen.

Koodi:

 Aliarvo () -alue ("A1"). Arvo = "Tervetuloa VBA: lle" Loppu-ali 

  • Ok, tämä lisää arvon “Welcome to VBA” soluun A1.

  • Jos haluat lisätä saman arvon useisiin soluihin, viita solut kuten alla oleva koodi.

Koodi:

 Aliarvon () alue ("A1: A5"). Arvo = "Tervetuloa VBA: han" loppuosa 
  • Tämä lisää arvon solusta A1 kohtaan A5 .

  • Jos haluat lisätä arvoja eri soluihin, mutta et solusarjoille, meidän on käytettävä koodia ja solun osoitetta erillisissä argumenteissa kuten alla.

Koodi:

 Aliarvon () alue ("A1, A5, B4, C2"). Arvo = "Tervetuloa VBA: han" Loppu 
  • Tämä lisää tekstin “Tervetuloa VBA: han” soluihin A1, A5, B4 ja C2 .

Esimerkki # 2 - Lisää arvo käyttämällä CELLS-ominaisuutta

Ei RANGE-objektin kautta, mutta myös VBA CELLS -ominaisuuden avulla voimme lisätä arvoja. Mutta yksi CELLS-objektin ongelmista on, että emme pääse IntelliSense-luetteloon, kuten saimme RANGE-objektille.

Täällä meidän on mainittava rivien ja sarakkeiden numerot, jotka tarvitsemme lisäysarvon. Esimerkiksi, jos haluat lisätä arvon soluun A1, koodi on CELLS (1,1), jos haluat lisätä arvon soluun B5, koodi on CELLS (5,2) eli yhtä suuri kuin B5 solu.

Emme voi lisätä arvoja useisiin soluihin käyttämällä CELLS-ominaisuutta, tämä on toisin kuin RANGE-objekti.

Esimerkki # 3 - Hae soluarvo

Olemme nähneet, kuinka arvoja lisätään soluihin, nyt näemme, kuinka arvot saadaan soluista.

Vaihe 1: Määritä muuttuja merkkijonoksi.

Koodi:

 Ala-arvo () Dim K merkkijonopäätyksen alim 

Vaihe 2: Tälle muuttujalle “k” osoitetaan solun A1 arvo. Soluun A1 olen kirjoittanut arvon “Welcome to VBA”.

Joten koodi on k = Alue (“A1”). Arvo

Koodi:

 Aliarvo () Dim K merkkijonona K = Alue ("A1"). Arvo End Sub 

Vaihe 3: Näytä muuttujan "k" tulos VBA-viestiruudussa.

Koodi:

 Aliarvo () Dim K merkkijonona K = Alue ("A1"). Arvo MsgBox K End Sub 

Suorittamalla koodi meidän pitäisi tulostaa solun A1 arvo sanomaruudussa.

Voimme myös käyttää RANGE-objektia saadaksesi solun A1 tiedot, alla oleva koodi näyttää saman.

Koodi:

 Aliarvo () Dim K merkkijonona Aseta CellValue = Alue ("A1") MsgBox CellValue End Sub 

Tämän pitäisi saada myös solun A1 arvo viestiruudussa.

Esimerkki 4 - Virhearvo, jos useampi kuin yksi soluarvo vaaditaan

Katso esimerkki alla olevasta koodista.

Koodi:

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

Jos suoritat yllä olevan koodin, näyttöön tulee "Type Mismatch" -virhe.

Syy miksi saamme tämän virheen, koska kun objektimuuttuja, joka on asetettu useampaan kuin yhteen solun "arvo" -ominaisuuteen, ei oikeastaan ​​ymmärrä, mikä soluarvo annetaan, joten se voi saada yhden solun arvon kerrallaan.


$config[zx-auto] not found$config[zx-overlay] not found