Obsah
Pokud hledáte nejjednodušší způsoby, jak používat VBA Range Offset, pak se vám tento článek vyplatí. Pojďme se podívat na způsoby použití funkce VBA Posunutí rozsahu.
Stáhnout pracovní sešit
Posunutí rozsahu VBA.xlsm11 způsobů použití posunu rozsahu VBA
Mám k dispozici následující datovou tabulku, která obsahuje informace o některých studentech vysoké školy. Na základě tohoto souboru dat vysvětlím způsoby použití metody VBA Posunutí rozsahu.
K tomuto účelu jsem použil Microsoft Excel 365 verze, můžete použít i jiné verze podle toho, jak vám to vyhovuje.
Metoda 1: Výběr buňky pomocí rozsahu VBA
Zde vybereme buňku obsahující název Daniel Defoe. K tomuto účelu použijeme Funkce RANGE na adrese VBA .
Krok-01 :
➤Přejít na Vývojář Tab>> Visual Basic Možnost
Poté se Editor jazyka Visual Basic se otevře.
➤Přejít na Vložte Tab>> Modul Možnost
Poté se Modul bude vytvořen.
Krok-02 :
➤Napsat následující kód
Sub SelectCell() Range("B8").Select End Sub
Vybere buňku B8 .
➤Press F5
Výsledek :
Tímto způsobem získáte buňku obsahující Daniel Defoe vybrané.
Přečtěte si více: Jak používat objekt rozsahu VBA v aplikaci Excel
Metoda 2: Výběr skupiny sousedících buněk pomocí rozsahu VBA
Můžete vybrat rozsah sousedících buněk, jako je např. Jméno studenta a sloupec Výsledek sloupec v následující tabulce podle této metody.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub ContiguousCells() Range("B5:C10").Select End Sub
Vybere buňky z B5 na C10 .
➤Press F5
Výsledek :
Poté získáte buňky v Sloupec B a Sloupec C vybrané.
Metoda 3: Výběr skupiny nesousedících buněk pomocí rozsahu VBA
Předpokládejme, že chcete vybrat studenty s názvem William David a Michael Anthony včetně jejich příslušných E-mailová adresa Pro výběr těchto nesourodých buněk můžete použít tuto metodu.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub nonContiguous() Range("B6,D6,B9,D9").Select End Sub
Vybere buňky B6 , D6 , B9, a D9 .
➤Press F5
Výsledek :
Poté se zobrazí buňky obsahující jméno studenta. William David , Michael Anthony, a jejich příslušné E-mailová adresa vybrané.
Metoda 4: Výběr skupiny nesousedících buněk a rozsahu pomocí rozsahu VBA
Touto metodou můžete současně vybrat rozsah buněk a některé nesousedící buňky.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub nonContiguouswithrange() Range("B5:B10,D6,D10").Select End Sub
Vybere rozsah buněk v rozsahu B5:B10 a další dvě buňky D6 , D10 .
➤Press F5
Výsledek :
Poté se zobrazí buňky ve sloupci Jméno studenta a dva E-mailové identity pro William David a Donald Paul vybrané.
Metoda-5: Výběr rozsahu pomocí posunu rozsahu VBA
Můžete vybrat rozsah buněk v Sloupec Jméno studenta pomocí Funkce OFFSET .
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub selectrangeoffset() Range("A1:A6").Offset(4, 1).Select End Sub
Nejprve, Rozsah("A1:A6") vybere rozsah A1:A6 , a pak Offset(4, 1) přesune 4 řádky směrem dolů od buňky A1 a 1 sloupec na pravé straně. Poté se stejný počet buněk v rozsahu A1:A6 bude vybrána odtud.
➤Press F5
Výsledek :
Tímto způsobem vyberete sloupec Jméno studenta .
Metoda-6: Záporný posun rozsahu VBA
Můžete vybrat Sloupec e-mailových identit podle této metody.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub negativerangeoffset() Range("F11:F16").Offset(-6, -2).Select End Sub
Nejprve, Rozsah("F11:F16") vybere rozsah F11:F16 , a pak Offset(-6, -2) se posune o 6 řádků nahoru od buňky F11 a 2 sloupce vlevo. Poté se stejný počet buněk v rozsahu F11:F16 bude vybrána odtud.
➤Press F5
Výsledek :
Poté budete moci vybrat sloupec E-mailová adresa .
Podobné čtení:
- VBA pro každou buňku v rozsahu v aplikaci Excel (3 metody)
- Jak počítat text v aplikaci Excel (7 snadných triků)
Metoda-7: Výběr rozsahu vzhledem k aktivní buňce
Zde máme aktivní buňku (buňka A1 ) a vzhledem k této buňce vybereme rozsah dat touto metodou.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub actvcell() Range(activecell.Offset(4, 1), activecell.Offset(9, 3)).Select End Sub
Zde, activecell je A1
První část activecell.Offset(4, 1) vybere buňku o 4 řádky dolů a 1 sloupec doprava od buňky. A1 a druhá část activecell.Offset(9, 3) vybere buňku o 9 řádků dolů a 3 sloupce doprava od buňky A1 .
Nakonec se vyberou všechny buňky mezi těmito dvěma buňkami.
➤Press F5
Výsledek :
Poté budete moci vybrat celý rozsah dat.
Metoda-8: Kopírování rozsahu
Pokud chcete zkopírovat rozsah buněk, můžete použít tuto metodu.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub copyrangeoffset() Range("A1:A6").Offset(4, 1).Copy End Sub
Nejprve, Rozsah("A1:A6") vybere rozsah A1:A6 , a pak Offset(4, 1) přesune 4 řádky směrem dolů od buňky A1 a 1 sloupec na pravé straně. Poté se stejný počet buněk v rozsahu A1:A6 bude vybrána odtud.
Nakonec zkopíruje hodnoty v rozsahu B5:B10 .
➤Press F5
Výsledek :
Poté budete moci zkopírovat rozsah dat v okně Sloupec Jméno studenta .
Metoda-9: Odstranění rozsahu
Zde si ukážeme způsob, jak odstranit rozsah dat s použitím VBA kód.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub dltrangeoffset() Range("F11:F17").Offset(-7, -2).Delete End Sub
Za prvé, Rozsah("F11:F17") vybere rozsah F11:F17 , a pak Offset(-7, -2) přesune 7 řádků nahoru z buňky F11 a 2 sloupce vlevo. Poté se stejný počet buněk v rozsahu F11:F17 bude vybrána odtud.
Nakonec odstraní rozsah D4:D10 .
➤Press F5
Výsledek :
Tímto způsobem zkopírujete datový rozsah ve složce Sloupec e-mailových identit .
Metoda-10: Použití posunu rozsahu VBA pro zadání hodnoty
Zde máme prázdnou buňku (pro vysvětlení této metody jsme z ní odstranili hodnotu) v poli Sloupec Jméno studenta a chceme ji vyplnit názvem Joseph Michael Pomocí VBA kódu můžeme tuto hodnotu snadno zadat.
Krok-01 :
➤Sledovat Krok-01 z Metoda-1
Sub valuerangeoffset() Range("A1").Offset(6, 1).Value = "Joseph Michael" End Sub
Za prvé, Rozsah("A1") vybere buňku A1 , a pak Offset(6, 1) přesune 6 řádků směrem dolů z buňky A1 a 1 sloupec na pravé straně. Poté se buňka B7 bude vybrána a nakonec bude zadána hodnota "Joseph Michael" v této buňce.
➤Press F5
Výsledek :
Tímto způsobem získáte název Joseph Michael v buňce B7 .
Metoda-11: Použití posunu rozsahu VBA k získání výstupu
Předpokládejme, že chcete napsat Prošlo nebo Neodpovídá ke jménům studentů v závislosti na Sloupec výsledků kde Předat nebo Selhání byl zapsán v závorce. Chcete-li tento podřetězec nalézt v řetězci Sloupec výsledků a zapište ji do Sloupec vyhověl/nevyhověl postupujte podle této metody.
Krok-01 :
➤Sledovat Krok-01 z Metoda-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
Zde je rozsah buněk C5:C10 je vybrána podle Rozsah("C5:C10") což je Sloupec výsledků
InStr(cell. value, "Pass")> 0 je podmínka, kdy je číslo větší než nula (když buňka obsahuje "Pass" ), pak bude následující řádek pokračovat a ve vedlejší buňce se zobrazí výstup ve tvaru Prošlo . Zde bude sousední buňka vybrána pomocí cell.Offset(0, 1) , což znamená, že se posune o 1 sloupec doprava od vstupní buňky.
Pokud se podmínka stane nepravdivou, znamená to, že buňka neobsahuje žádné "Pass" pak řádek pod Jinak se provede a poskytne výstupní hodnotu v sousední buňce jako Neúspěšný .
Tato smyčka bude pokračovat pro každou buňku.
➤Press F5
Výsledek :
Pak získáte výstupy Prošel nebo neprošel v Prošel/neprošel sloupec.
Praktická část
Pro samostatné cvičení jsme připravili Cvičení sekce jako níže v listu s názvem Cvičení . Udělejte to prosím sami.
Závěr
V tomto článku jsem se pokusil popsat nejjednodušší způsoby použití. VBA Posunutí rozsahu v aplikaci Excel efektivně. Doufám, že vám to bude užitečné. Pokud máte nějaké návrhy nebo dotazy, neváhejte se s námi o ně podělit.