A VBA tartományeltolás használata (11 mód)

  • Ossza Meg Ezt
Hugh West

Ha a legegyszerűbb módját keresi a következők használatának VBA Range Offset, akkor megéri ezt a cikket olvasni. Kezdjük el a VBA Távolságeltolódás.

Munkafüzet letöltése

VBA tartomány Offset.xlsm

A VBA tartományeltolás 11 módja a VBA tartományeltolás használatára

Az alábbi adattáblázat egy főiskola néhány hallgatójának adatait tartalmazza. Ennek az adatkészletnek a felhasználásával ismertetem a módszerek használatát. VBA Távolságeltolódás.

Erre a célra a következő eszközöket használtam Microsoft Excel 365 verzió, bármely más verziót is használhatsz a kényelemnek megfelelően.

Módszer-1: Cellák kiválasztása VBA tartomány használatával

Itt egy olyan cellát választunk ki, amely a következő nevet tartalmazza Daniel Defoe. Erre a célra a RANGE funkció a oldalon. VBA .

Step-01 :

➤Go to Fejlesztő Tab>> Visual Basic Opció

Ezután a Visual Basic szerkesztő megnyílik.

➤Go to Beillesztés Tab>> Modul Opció

Ezután egy Modul létrejön.

Step-02 :

➤ Írja a következő kódot

 Sub SelectCell() Range("B8").Select End Sub 

Ez kiválasztja a cellát B8 .

➤Press F5

Eredmény :

Ily módon megkapja a cellát, amely tartalmazza a Daniel Defoe kiválasztva.

Bővebben: A VBA tartományobjektum használata az Excelben

Módszer-2: Egybefüggő cellák csoportjának kijelölése a VBA tartomány használatával

Kiválaszthat egybefüggő cellák tartományát, mint a Diák neve oszlop és a Eredmény oszlopot a következő táblázatban a következő módszerrel.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub ContiguousCells() Range("B5:C10").Select End Sub 

Kiválasztja a cellákat a B5 a címre. C10 .

➤Press F5

Eredmény :

Ezután megkapja a cellákat a B oszlop és C oszlop kiválasztva.

Módszer-3: Nem egybefüggő cellák csoportjának kijelölése VBA tartomány használatával

Tegyük fel, hogy ki szeretné választani a következő nevű diákokat William David és Michael Anthony beleértve a vonatkozó Email azonosító A nem egyező cellák kiválasztásához ezt a módszert követheti.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub nonContiguous() Range("B6,D6,B9,D9").Select End Sub 

Kiválasztja a cellákat B6 , D6 , B9, és D9 .

➤Press F5

Eredmény :

Ezután megkapja a diák nevét tartalmazó cellákat. William David , Michael Anthony, és a hozzájuk tartozó Email azonosító kiválasztva.

4. módszer: Nem egybefüggő cellák csoportjának és tartománynak a kijelölése a VBA tartomány használatával

Ezzel a módszerrel egyszerre jelölhet ki egy cellatartományt és néhány nem egybefüggő cellát.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub nonContiguouswithrange() Range("B5:B10,D6,D10").Select End Sub 

Ez kiválasztja a cellák tartományát a tartományban. B5:B10 és a másik két cellát D6 , D10 .

➤Press F5

Eredmény :

Ezután megkapja az oszlop celláit. Diák neve és két Email azonosítók a oldalon. William David és Donald Paul kiválasztva.

Módszer-5: Tartomány kiválasztása a VBA tartományeltolás használatával

Kiválaszthat egy cellatartományt a Diák neve oszlop a OFFSET funkció .

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub selectrangeoffset() Range("A1:A6").Offset(4, 1).Select End Sub 

Először, Range("A1:A6") kiválasztja a tartományt A1:A6 , majd Offset(4, 1) 4 sorral lefelé mozog a cellától A1 és 1 oszlopot a jobb oldalon. Ezután a tartományban lévő azonos számú cellák száma A1:A6 innen lesz kiválasztva.

➤Press F5

Eredmény :

Ily módon kiválasztja az oszlopot Diák neve .

6. módszer: VBA tartományeltolás negatív

Kiválaszthatja a Email azonosító oszlop ezt a módszert követve.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub negativerangeoffset() Range("F11:F16").Offset(-6, -2).Select End Sub 

Először, Range("F11:F16") kiválasztja a tartományt F11:F16 , majd Offset(-6, -2) 6 sorral felfelé mozog a cellától F11 és 2 oszlopot a bal oldalon. Ezután az azonos számú cellák a tartományban F11:F16 innen lesz kiválasztva.

➤Press F5

Eredmény :

Ezután kiválaszthatja az oszlopot. Email azonosító .

Hasonló olvasmányok:

  • VBA az Excel tartomány egyes celláihoz (3 módszer)
  • Hogyan számolhat szöveget az Excelben (7 egyszerű trükk)

7. módszer: Tartomány kiválasztása az aktív cellához képest

Itt van egy aktív cellánk (cell A1 ), és erre a cellára vonatkozóan ebben a módszerben fogjuk kiválasztani az adattartományt.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub actvcell() Range(activecell.Offset(4, 1), activecell.Offset(9, 3)).Select End Sub 

Tessék, activecell a A1

Az első rész activecell.Offset(4, 1) a cellától 4 sorral lefelé és 1 oszloppal jobbra lévő cellát választja ki. A1 és a második rész activecell.Offset(9, 3) egy cellát választ ki 9 sorral lefelé és 3 oszloppal jobbra a cellából A1 .

Végül a két cella közötti összes cella kiválasztásra kerül.

➤Press F5

Eredmény :

Ezután ki tudja választani a teljes adattartományt.

8. módszer: Tartomány másolása

Ha egy cellatartományt szeretne másolni, akkor ezt a módszert követheti.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub copyrangeoffset() Range("A1:A6").Offset(4, 1).Copy End Sub 

Először, Range("A1:A6") kiválasztja a tartományt A1:A6 , majd Offset(4, 1) 4 sorral lefelé mozog a cellától A1 és 1 oszlopot a jobb oldalon. Ezután az azonos számú cellák a tartományban A1:A6 innen kerül kiválasztásra.

Végül a program a következő tartományba másolja az értékeket B5:B10 .

➤Press F5

Eredmény :

Ezt követően az adattartományt a Diák neve oszlop .

9. módszer: Tartomány törlése

Itt azt mutatjuk be, hogyan lehet egy adatsort törölni a következő használatával VBA kód.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub dltrangeoffset() Range("F11:F17").Offset(-7, -2).Delete End Sub 

Először is, Range("F11:F17") kiválasztja a tartományt F11:F17 , majd Offset(-7, -2) 7 sorral felfelé mozog a cellától F11 és 2 oszlopot a bal oldalon. Ezután az azonos számú cellák a tartományban F11:F17 innen lesz kiválasztva.

Végül törli a tartományt D4:D10 .

➤Press F5

Eredmény :

Ily módon az adattartományt másolja be a Email azonosító oszlop .

10. módszer: VBA tartományeltolás használata érték megadásához

Itt van egy üres cellánk ( a módszer magyarázatához eltávolítottuk az értéket a cellából) a Diák neve oszlop és ki akarjuk tölteni a Joseph Michael A VBA kóddal könnyen megadhatjuk ezt az értéket.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub valuerangeoffset() Range("A1").Offset(6, 1).Value = "Joseph Michael" End Sub 

Először is, Range("A1") kiválasztja a cellát A1 , majd Offset(6, 1) 6 sorral lefelé mozog a cellától A1 és 1 oszlopot a jobb oldalra. Ezután a cella B7 lesz kiválasztva, és végül beírja az alábbi értéket "Joseph Michael" ebben a cellában.

➤Press F5

Eredmény :

Így kapja meg a nevet Joseph Michael cellában B7 .

11. módszer: A VBA tartományeltolás használata a kimenet megszerzéséhez

Tegyük fel, hogy a következőt akarja írni Átment vagy Nem sikerült megfelelni a tanulók nevéhez, attól függően, hogy a Eredmény oszlop ahol Pass vagy Fail zárójelbe van írva. Ahhoz, hogy ezt a részláncot megtaláljuk a Eredmény oszlop és írja le a Pass/Fail oszlop kövesse ezt a módszert.

Step-01 :

➤Follow Step-01 a Módszer-1

 Sub CheckSubstring() Dim cell As Range For Each cell In Range("C5:C10") If InStr(cell.value, "Pass")> 0 Then cell.Offset(0, 1).value = "Passed" Else cell.Offset(0, 1).value = "Failed" End If Next cell End Sub 

Itt a cellatartomány C5:C10 kiválasztja a Range("C5:C10") amely a Eredmény oszlop

InStr(cell. value, "Pass")> 0 az a feltétel, amikor a szám nagyobb, mint nulla (amikor a cella tartalmaz "Pass" ), akkor a következő sor folytatódik, és a kimenetet a szomszédos cellában a következőképpen adja meg Átment Itt a szomszédos cellát a következő módon választjuk ki cell.Offset(0, 1) , ami azt jelenti, hogy a beviteli cellától jobbra 1 oszlopot fog mozogni.

Ha a feltétel hamis lesz, akkor a cella nem tartalmaz semmilyen "Pass" akkor a vonal alatt Else végrehajtódik, és a kimeneti értéket a szomszédos cellában adja meg, mint Sikertelen .

Ez a ciklus minden egyes cellánál folytatódik.

➤Press F5

Eredmény :

Ezután a következő kimeneteket kapja Átment vagy nem ment át a Megfelelt/nem felelt meg oszlop.

Gyakorlati szekció

A saját magad általi gyakorláshoz biztosítottunk egy Gyakorlat szakasz az alábbi módon egy lapon, amelynek neve Gyakorlat Kérem, tegye meg egyedül.

Következtetés

Ebben a cikkben megpróbáltam a legegyszerűbb módokat ismertetni a VBA tartományeltolás az Excelben hatékonyan. Remélem, hasznosnak találja. Ha bármilyen javaslata vagy kérdése van, ossza meg velünk.

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.