VBA választási tartomány - Tartomány kiválasztása az Excel VBA-ban?

Excel VBA választási tartomány

A VBA-val kapcsolatos alapkitöltések után fontos megérteni, hogyan kell a munkalap számos cellatartalmával dolgozni. Amint gyakorlatilag a legtöbbször elkezdi végrehajtani a kódokat, egy cellatartománnyal kell dolgoznia, ezért fontos megérteni, hogyan kell működni egy cellatartománnyal, és az egyik ilyen fogalom a VBA „Range of Range”. Ebben a cikkben megmutatjuk, hogyan kell működni az Excel VBA „Kiválasztási tartományával”.

A Kiválasztás és a Tartomány két különböző téma, de amikor azt mondjuk, hogy válassza ki a tartományt vagy a tartomány kiválasztását, ez egyetlen fogalom. A RANGE egy objektum, a „Selection” egy tulajdonság, a „Select” pedig egy módszer. Az emberek általában összetévesztik ezeket a kifejezéseket. Fontos ismerni a különbségeket általában.

Tartomány kiválasztása az Excel VBA-ban?

1. példa

Tegyük fel például, hogy akkor a munkalapon ki szeretné választani az A1 cellát. Először meg kell adnunk a cella címét egy RANGE objektum használatával, mint az alábbiak.

Kód:

Miután megemlítette a cellát, amelyet ki kell választanunk, tegyen egy pontot a RANGE objektumhoz társított IntelliSense lista megjelenítéséhez.

Alakítsa ki ezt a fajta listát, válassza a „Kiválasztás” módszert.

Kód:

Altartomány_Példa1 () Tartomány ("A1"). Válassza a Vége al lehetőséget

Ez a kód választja ki az aktív cellában az A1 cellát.

Ha ki akarja jelölni a cellát a különböző munkalapokon, akkor először meg kell határoznunk a munkalapot a neve alapján. A munkalap megadásához a „WORKSHEET” objektumot kell használnunk, és dupla idézőjelbe kell írnunk a munkalap nevét.

Például, ha ki akarja jelölni az A1 cellát az „Adatlap” munkalapon, akkor először adja meg a munkalapot az alábbiakhoz hasonlóan.

Kód:

Altartomány_Példa1 () Munkalapok ("Adatlap") Vége al

Ezután folytassa a kódot, hogy meghatározza, mit kell tennünk ebben a lapban. Az „Adatlap” részben ki kell választanunk az A1 cellát, így a kód RANGE („A1”) lesz. Válassza ki.

Kód:

Altartomány_Példa1 () Munkalapok ("Adatlap"). Tartomány ("A1"). Válassza a Vége al

Amikor megpróbálja végrehajtani ezt a kódot, az alábbi hibát kapjuk.

Ennek oka: "nem tudjuk közvetlenül megadni a tartomány objektumot és a metódus kiválasztását a munkalapok objektumhoz"

Először ki kell választanunk vagy aktiválnunk kell a VBA munkalapot, majd bármit megtehetünk, amit szerettünk volna.

Kód:

Altartomány_Példa1 () Munkalapok ("Adatlap"). Aktiválja a Tartományt ("A1"). Válassza a Vége al lehetőséget

Most ez kiválasztja az A1 cellát az „Adatlap” munkalapon.

2. példa - Az aktuálisan kiválasztott tartomány működése

A Kiválasztás más dolog, és a már kiválasztott cellatartománnyal való munka más. Tegyük fel, hogy be akarsz illeszteni egy „Hello VBA” értéket az A1 cellába, akkor ezt kétféleképpen tehetjük meg.

Először közvetlenül átadhatjuk a VBA kódot RANGE (“A1”) néven. Érték = “Hello, VBA.”

Kód:

Sub Range_Példa1 () Range ("A1"). Érték = "Hello VBA" End Sub

Ez a kód csak annyit tesz, hogy csak beilleszti a „Hello VBA” értéket az A1 cellába, függetlenül attól, hogy melyik cella van kijelölve.

Nézze meg a kód fenti eredményét. Amikor végrehajtjuk ezt a kódot, beillesztette a „Hello VBA” értéket, annak ellenére, hogy a jelenleg kiválasztott cella B2.

Másodszor a „Selection” tulajdonság segítségével beilleszthetjük az értéket a cellába. Ehhez először ki kell választanunk a cellát, és végre kell hajtanunk a kódot.

Kód:

Altartomány_Példa1 () Selection.Value = "Hello VBA" End Sub

Ez a kód azt fogja tenni, hogy ez beilleszti a „Hello VBA” értéket az aktuálisan kiválasztott cellába. Nézze meg például a végrehajtás alábbi példáját.

Amikor végrehajtottam a kódot, az aktuálisan kiválasztott cellám B2 volt, és kódunk ugyanazt az értéket illesztette be az aktuálisan kiválasztott cellába.

Most kiválasztom a B3 cellát és végrehajtom, ott is ugyanazt az értéket kapjuk.

Még egy dolog, amit tehetünk a „választás” tulajdonsággal: több cellába is beilleszthetünk értéket. Például most kiválasztom az A1 és B5 közötti cellatartományt.

Most, ha végrehajtom a kódot, az összes kijelölt cellához az értéket „Hello VBA” -ként kapjuk meg.

Tehát a cellacím RANGE objektumonkénti meghatározása és a Selection tulajdonság közötti egyszerű különbség az, hogy a Range objektumkódban értéket ad a kifejezetten megadott cellákhoz.

De a Selection objektumban nem mindegy, hogy melyik cellában tartózkodsz. Ez beilleszti az említett értéket az összes kiválasztott cellába.

Amire itt emlékezni kell

  • Nem tudjuk közvetlenül megadni a select metódust a Selection tulajdonság alatt.
  • A RANGE objektum, a kiválasztás pedig tulajdonság.
  • Tartomány helyett használhatjuk a CELLS tulajdonságot.

érdekes cikkek...