Tartalomjegyzék
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.xlsmA 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.