Tento tutoriál vám ukáže, jak používat vlastnost Range.End ve VBA.
Většinu věcí, které děláte ručně v sešitu nebo listu Excelu, lze automatizovat v kódu VBA.
Pokud máte v aplikaci Excel řadu neprázdných buněk a stisknete Ctrl+šipka dolů, kurzor se přesune na poslední neprázdnou buňku ve sloupci, ve kterém se nacházíte. Podobně pokud stisknete Ctl+šipka nahoru, kurzor se přesune do první prázdné buňky. Totéž platí pro řádek pomocí Ctrl+šipka vpravo nebo Ctrl+šipka doleva přejít na začátek nebo konec řádku. Všechny tyto kombinace kláves lze použít v kódu VBA pomocí Koncová funkce.
Syntaxe vlastnosti End End
Vlastnost Range.End vám umožňuje přesunout se do konkrétní buňky v aktuální oblasti, se kterou pracujete.
výraz.Konec (Směr)
výraz je adresa buňky (Rozsah) buňky, ze které chcete začít, např .: Rozsah („A1“)
END je vlastnost objektu Range, který je ovládán.
Směr je konstanta aplikace Excel, kterou můžete použít. K dispozici jsou 4 možnosti - xlDown, xlToLeft, xlToRight a xlUp.
Přechod na poslední buňku
Níže uvedený postup vás přesune do poslední buňky v aktuální oblasti buněk, ve kterých se nacházíte.
1234 | Sub GoToLast ()'přesunout na poslední buňku obsazenou v aktuální oblasti buněkRozsah („A1“). Konec (xlDown). VyberteEnd Sub |
Počítání řádků
Následující postup vám umožňuje použít xlDown konstanta s vlastností Range End a spočítá, kolik řádků je ve vaší aktuální oblasti.
12345678 | Sub GoToLastRowofRange ()Dim rw As IntegerRozsah („A1“). Vyberte'získejte poslední řádek v aktuální oblastirw = Rozsah ("A1"). Konec (xlDown). Řádek'ukazují, kolik řádků se používáMsgBox „Poslední řádek použitý v tomto rozsahu je“ & rwEnd Sub |
Zatímco ten níže bude počítat sloupce v rozsahu pomocí xlToRight konstantní.
12345678 | Sub GoToLastCellofRange ()Dim col jako celé čísloRozsah („A1“). Vyberte'získat poslední sloupec v aktuální oblasticol = Rozsah ("A1"). Konec (xlToRight). Sloupec'ukazují, kolik sloupců je použito.'MsgBox „Poslední sloupec použitý v tomto rozsahu je“ & colEnd Sub |
Vytvoření rozsahového pole
Níže uvedený postup nám umožňuje začít u první buňky v rozsahu buněk a poté pomocí vlastnosti End (xlDown) najít poslední buňku v rozsahu buněk. Poté můžeme naše pole ReDim změnit na celkový počet řádků v Range, což nám umožní procházet rozsah buněk.
123456789101112131415161718 | Sub PopulateArray ()'deklarujte poleDim strSuppliers () jako řetězec'deklarujte celé číslo pro počítání řádků.'Dim n jako celé číslo“spočítejte řádkyn = Rozsah ("B1", Rozsah ("B1"). Konec (xlDown)). Rows.Count'inicializujte a naplňte poleZákazníci ReDim (n)'deklarujte celé číslo pro smyčku.'Dim i As Integer'naplnit polePro i = 0 až nstrCustomers (i) = Range ("B1"). Offset (i, 0) .HodnotaPříště já'show message box with values of arrayPřipojení MsgBox (strCustomers, vbCrLf)End Sub |
Když spustíme tento postup, vrátí následující okno se zprávou.