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

Sisällysluettelo

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: n oppimisen alussa 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. Jos haluat käyttää RANGE-objektia ensin, meidän on 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?

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, aseta nyt piste (.) Nähdäksesi IntelliSense-luettelon kaikista tähän objektiin liittyvistä ominaisuuksista ja menetelmistä.

Koodi:

Aliarvon () alue ("A1"). End Sub
  • Muodosta tämä valikoima vaihtoehtoja ja valitse 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:

Aliarvon () alue ("A1"). Arvo = "Tervetuloa VBA: han" loppuosa
  • 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

Emme RANGE-objektin kautta vaan myös käyttämällä VBA CELLS -ominaisuutta 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ää arvo. 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" määritämme solun A1 arvon. 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 solun A1 tietojen saamiseksi. Alla oleva koodi näyttää sinulle 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 esimerkiksi alla oleva koodi.

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 on asetettu useampaan kuin yhteen solun “arvoon”, ominaisuus ei oikeastaan ​​ymmärrä annettavan solun arvoa, joten se voi saada yhden solun arvon kerrallaan.

Mielenkiintoisia artikkeleita...