VBA nimetty alue | Kuinka luoda ja käyttää nimettyjä alueita?
Excelin VBA-nimetty alue
Kun työskentelemme suuren datamäärän kanssa välttääksemme viittaamista tiettyyn soluun tai solualueisiin, luomme yleensä nimettyjä alueita ja sen avulla voimme viitata vaadittavaan solualueeseen nimetyn alueen läpi. VBA: ssa nimialueiden luomiseksi meillä on Lisää nimi -toiminto.
Voimme valita solun tai solualueen ja antaa sille nimen. Solujen nimeämisen jälkeen voimme viitata niihin soluihin kirjoittamalla nämä määritetyt nimet tavallisten rivi- tai sarakeviitteiden sijaan.
Voit ladata tämän VBA Named Range Excel -mallin täältä - VBA Named Range Excel -malliKuinka luoda nimettyjä alueita?
Nimettyjen alueiden luominen on kävely puistotyössä. Ensimmäinen asia, joka meidän on tehtävä, on tunnistaa solut, jotka haluamme luoda nimialue Excelissä.
Katso esimerkki alla olevasta kuvasta.
Saadaksesi voiton B4-soluun olen soveltanut kaavaa B2 - B3.
Tämä on yhteistä asia, jota kaikki tekevät. Mutta entä Namesin luominen ja kaavan käyttäminen esimerkiksi "Myynti" - "Kustannukset".
Aseta kohdistin soluun B2> Siirry Nimi-ruutuun ja kutsu sitä nimellä Myynti.
Aseta kohdistin B3-solulle ja kutsu sitä kustannukseksi.
Nyt voitto-sarakkeessa voimme viitata näihin nimiin soluviittausten sijaan.
Tämä on nimettyjen alueiden perusasia.
Kuinka luoda nimettyjä alueita VBA-koodilla?
Esimerkki 1
Oletko koskaan ajatellut luoda nimettyä aluetta VBA-koodilla?
Luo nimetty alue seuraamalla alla olevia ohjeita.
Vaihe 1: Määritä muuttujaksi "Range".
Koodi:
Ala NamedRanges_Example () Dim Rng Range End Sub
Vaihe 2: Aseta nyt muuttuja “Rng” tiettyihin soluihin, jotka haluat nimetä.
Koodi:
Sub NamedRanges_Example () Dim Rng As Range Set Rng = Alue ("A2: A7") Loppu Sub
Vaihe 3: ”ThisWorkbook” -objektin käyttö käyttää Nimi-ominaisuutta.
Meillä on niin paljon parametreja Names.Add- menetelmällä. Alla on selitykset.
[Nimi]: Nimi ei ole muuta kuin mikä nimi haluamme antaa määritetylle alueelle.
Vaikka solun nimeäminen ei saisi sisältää mitään erikoismerkkejä paitsi alaviiva (_) -symboli eikä sen tulisi sisältää myös välilyöntejä, sen ei pitäisi alkaa numeerisilla arvoilla.
[Viittaa]: Tämä ei ole mitään muuta kuin mitä solualuetta tarkoitamme.
Mielestäni nämä kaksi parametria ovat riittävän hyvät menettelyn aloittamiseksi.
Vaihe 4: Nimi, argumentti kirjoittaa nimen, jonka haluat antaa. Olen nimennyt "Myyntinumerot".
Koodi:
Sub NamedRanges_Example () Dim Rng Range Range Rng = Range ("A2: A7") ThisWorkbook.Names.Add Name: = "Myyntinumerot" End Sub
Vaihe 5: Syötä viittauksessa argumenttiin solualue, jonka haluamme luoda. Rng-muuttujan nimessä olemme jo määrittäneet solualueeksi A2: sta A7: een, joten anna argumentti nimellä "Rng".
Koodi:
Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") ThisWorkbook.Names.Add Name: = "Myyntinumerot", RefersTo: = Rng End Sub
Ok, tämä koodi luo nimellisen alueen soluille A2: sta A7: een.
Nyt laskentataulukossa olen luonut joitain numeroita A2: sta A7: een.
A8-solussa haluan saada yllä olevat solunumerot yhteensä. Käyttämällä nimettyä aluetta luomme SUMMA näistä luvuista.
Koodi:
Sub NamedRanges_Example () Dim Rng As Range Set Rng = Range ("A2: A7") ThisWorkbook.Names.Add Name: = "Myyntinumerot", RefersTo: = Rng Range ("A8"). Arvo = WorksheetFunction.Sum (Alue ( "Myyntinumerot")) Loppu ala
Jos suoritat tämän koodin manuaalisesti tai painamalla sitten f5-näppäintä, saadaan nimetty alue solusta A8.
Tämä on "Nimettyjen alueiden" perustiedot.
Esimerkki 2
RBA-objektia käyttävässä VBA: ssa voimme viitata soluihin. Vastaavasti voimme myös viitata näihin soluihin käyttämällä nimettyjä alueita.
Esimerkiksi yllä olevassa esimerkissä olemme nimenneet solun B2 nimellä "Myynti" ja B3: n "Kustannukset" .
Käyttämällä todellista soluviittausta viittaamme tällaisiin soluihin.
Koodi:
Sub NamedRanges () Range ("B2"). Valitse 'Tämä valitsee B2-solualueen ("B3"). Valitse' Tämä valitsee B3-solun End Sub
Koska olemme jo luoneet nämä solut, voimme viitata näiden nimien käyttämiseen kuten alla.
Koodi:
Sub NamedRanges () -alue ("Myynti"). Valitse 'Tämä valitsee solun nimeltä "Myynti" eli B2-solualue ("Kustannukset"). Valitse "Tämä valitsee solun nimeltä" Kustannukset "eli B3-solun loppu
Tällä tavoin käyttämällä nimettyjä alueita, voimme käyttää näitä soluja. Näitä käyttämällä voimme laskea voittomäärän solussa B4. Tälle etunimelle solu B4 Voitto.
Käytä nyt VBA-editorissa tätä koodia.
Koodi:
Sub NamedRanges_Example1 () Alue ("Voitto"). Arvo = Alue ("Myynti") - Alue ("Kustannukset") Loppu
Tämä laskee voiton määrän solussa nimeltä "Voitto".