Objekt rozsahu Excel VBA

Co je rozsah VBA?

Objekt rozsahu VBA pล™edstavuje buลˆku nebo vรญce bunฤ›k v listu aplikace Excel. Je to nejdลฏleลพitฤ›jลกรญ objekt Excel VBA. Pomocรญ objektu rozsahu Excel VBA mลฏลพete odkazovat na,

  • Jedna buลˆka
  • ล˜รกdek nebo sloupec bunฤ›k
  • Vรฝbฤ›r bunฤ›k
  • 3D rozsah

Jak jsme probrali v naลกem pล™edchozรญm tutoriรกlu, VBA se pouลพรญvรก k zรกznamu a spouลกtฤ›nรญ maker. Ale jak VBA identifikuje, kterรก data z listu je tล™eba provรฉst. Zde jsou uลพiteฤnรฉ objekty rozsahu VBA.

รšvod do odkazovรกnรญ na objekty ve VBA

Odkazovรกnรญ na objekt rozsahu VBA aplikace Excel a kvalifikรกtor objektu.

  • Objektovรฝ kvalifikรกtor: Pouลพรญvรก se pro odkazovรกnรญ na objekt. Urฤuje seลกit nebo list, na kterรฝ odkazujete.

Chcete-li manipulovat s tฤ›mito hodnotami bunฤ›k, Nemovitosti a Metody Jsou pouลพรญvรกny.

  • Vlastnictvรญ: Vlastnost uklรกdรก informace o objektu.
  • Metoda: Metoda je akce objektu, kterรฝ bude provรกdฤ›t. Objekt rozsahu mลฏลพe provรกdฤ›t akce, jako je vรฝbฤ›r, kopรญrovรกnรญ, vymazรกnรญ, tล™รญdฤ›nรญ atd.

VBA se ล™รญdรญ vzorem hierarchie objektลฏ a odkazuje na objekt v aplikaci Excel. Musรญte dodrลพet nรกsledujรญcรญ strukturu. Pamatujte, ลพe teฤka zde spojuje objekt na kaลพdรฉ z rลฏznรฝch รบrovnรญ.

Aplikace.Seลกity.Pracovnรญ listy.Rozsah

Existujรญ dva hlavnรญ typy vรฝchozรญch objektลฏ.

Jak odkazovat na objekt rozsahu Excel VBA pomocรญ vlastnosti Range

Vlastnost rozsahu lze pouลพรญt ve dvou rลฏznรฝch typech objektลฏ.

  • Objekty listu
  • Rozsah objektลฏ

Syntaxe pro vlastnost rozsahu

  1. Klรญฤovรฉ slovo โ€žRozsahโ€œ.
  2. Zรกvorky, kterรฉ nรกsledujรญ za klรญฤovรฝm slovem
  3. Pล™รญsluลกnรฝ rozsah bunฤ›k
  4. Citรกt (" ")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")

Kdyลพ odkazujete na objekt Range, jak je znรกzornฤ›no vรฝลกe, oznaฤuje se jako plnฤ› kvalifikovanรฝ odkaz. Excelu jste pล™esnฤ› ล™ekli, jakรฝ rozsah chcete, jakรฝ list a v jakรฉm listu.

Pล™รญklad: MsgBox Pracovnรญ list(โ€œlist1โ€).Rozsah(โ€œA1โ€).Hodnota

Pomocรญ vlastnosti Range mลฏลพete provรกdฤ›t mnoho รบkolลฏ, jako napล™.

  • Odkazujte na jednu buลˆku pomocรญ vlastnosti rozsahu
  • Podรญvejte se na jednu buลˆku pomocรญ vlastnosti Worksheet.Range
  • Odkazuje na celรฝ ล™รกdek nebo sloupec
  • Podรญvejte se na slouฤenรฉ buลˆky pomocรญ Worksheet.Range Property a mnoha dalลกรญch

Proto bude pล™รญliลก zdlouhavรฉ na pokrytรญ vลกech scรฉnรกล™ลฏ pro vlastnost rozsahu. Pro scรฉnรกล™e uvedenรฉ vรฝลกe uvedeme pล™รญklad pouze pro jeden. Odkazujte na jednu buลˆku pomocรญ vlastnosti rozsahu.

Podรญvejte se na jednu buลˆku pomocรญ vlastnosti Worksheet.Range

Chcete-li odkazovat na jednu buลˆku, musรญte odkazovat na jednu buลˆku.

Syntaxe je jednoduchรก "Rozsah ("Buลˆka")".

Zde pouลพijeme pล™รญkaz โ€ž.Selectโ€œ pro vรฝbฤ›r jednรฉ buลˆky z listu.

Krok 1) V tomto kroku otevล™ete svลฏj excel.

Jedna buลˆka pomocรญ vlastnosti Worksheet.Range

Krok 2) V tomto kroku,

  • Kliknฤ›te na Jedna buลˆka pomocรญ vlastnosti Worksheet.Range .
  • Otevล™e se okno.
  • Zde zadejte nรกzev programu a kliknฤ›te na tlaฤรญtko 'OK'.
  • Dostanete se do hlavnรญho souboru aplikace Excel, z hornรญ nabรญdky kliknฤ›te na tlaฤรญtko 'stop' zรกznam pro zastavenรญ zรกznamu makra.

Jedna buลˆka pomocรญ vlastnosti Worksheet.Range

Krok 3) V dalลกรญm kroku

  • Kliknฤ›te na tlaฤรญtko Makro Jedna buลˆka pomocรญ vlastnosti Worksheet.Range z hornรญho menu. Otevล™e se okno nรญลพe.
  • V tomto oknฤ› kliknฤ›te na tlaฤรญtko 'upravit'.

Jedna buลˆka pomocรญ vlastnosti Worksheet.Range

Krok 4) Vรฝลกe uvedenรฝ krok otevล™e editor kรณdu VBA pro nรกzev souboru โ€žSingle Cell Rangeโ€œ. Zadejte kรณd, jak je uvedeno nรญลพe, pro vรฝbฤ›r rozsahu โ€žA1โ€œ z excelu.

Jedna buลˆka pomocรญ vlastnosti Worksheet.Range

Krok 5) Nynรญ soubor uloลพte Jedna buลˆka pomocรญ vlastnosti Worksheet.Range a spusลฅte program, jak je uvedeno nรญลพe.

Jedna buลˆka pomocรญ vlastnosti Worksheet.Range

Krok 6) Po spuลกtฤ›nรญ programu uvidรญte, ลพe je vybrรกna buลˆka โ€žA1โ€œ.

Jedna buลˆka pomocรญ vlastnosti Worksheet.Range

Stejnฤ› tak mลฏลพete vybrat buลˆku s konkrรฉtnรญm nรกzvem. Napล™รญklad pokud chcete vyhledat buลˆku s nรกzvem โ€žGuru99- Vรฝukovรฝ program VBAโ€œ. Pล™รญkaz musรญte spustit, jak je znรกzornฤ›no nรญลพe. Vybere buลˆku s tรญmto nรกzvem.

Rozsah("Guru99- Vรฝukovรฝ program VBAโ€œ). Vyberte

Chcete-li pouลพรญt jinรฝ objekt rozsahu, zde je ukรกzka kรณdu.

Rozsah pro vรฝbฤ›r buลˆky v Excelu Rozsah deklarovรกn
Pro jednu ล™adu Rozsah (โ€ž1:1โ€œ)
Pro jeden sloupec Rozsah (โ€žA: Aโ€œ)
Pro souvislรฉ buลˆky Rozsah (โ€žA1:C5โ€œ)
Pro nesousedรญcรญ buลˆky Rozsah (โ€žA1:C5, F1:F5โ€œ)
Pro prลฏnik dvou rozsahลฏ Rozsah (โ€žA1:C5 F1:F5โ€œ)

(Pro buลˆku kล™iลพovatky nezapomeลˆte, ลพe neexistuje ลพรกdnรฝ operรกtor ฤรกrky)

Chcete-li slouฤit Cell Rozsah (โ€žA1:C5โ€œ)

(Chcete-li slouฤit buลˆku, pouลพijte pล™รญkaz โ€žslouฤitโ€œ)

Vlastnost buลˆky

Podobnฤ› jako rozsah, in VBA mลฏลพete takรฉ โ€žMajetek buลˆkyโ€œ. Jedinรฝ rozdรญl je v tom, ลพe mรก vlastnost โ€žitemโ€œ, kterou pouลพรญvรกte k odkazovรกnรญ na buลˆky v tabulce. Vlastnost buลˆky je uลพiteฤnรก v programovacรญ smyฤce.

Napล™รญklad,

Cells.item(ล˜รกdek, Sloupec). Oba ล™รกdky nรญลพe odkazujรญ na buลˆku A1.

  • Cells.item(1,1) NEBO
  • Cells.item(1,โ€Aโ€)

Vlastnost Range Offset

Vlastnost posunu rozsahu vybere ล™รกdky/sloupce mimo pลฏvodnรญ polohu. Na zรกkladฤ› deklarovanรฉho rozsahu se vybรญrajรญ buลˆky. Viz pล™รญklad nรญลพe.

Napล™รญklad,

Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select

Vรฝsledkem bude buลˆka B2. Vlastnost offset pล™esune buลˆku A1 o 1 sloupec a 1 ล™รกdek pryฤ. Hodnotu rowoffset / columnoffset mลฏลพete zmฤ›nit podle potล™eby. K posunutรญ bunฤ›k zpฤ›t mลฏลพete pouลพรญt zรกpornou hodnotu (-1).

Stรกhnฤ›te si Excel obsahujรญcรญ vรฝลกe uvedenรฝ kรณd

Stรกhnฤ›te si vรฝลกe uvedenรฝ Excel Code

Shrnutรญ

  • Objekt rozsahu VBA pล™edstavuje buลˆku nebo vรญce bunฤ›k v listu aplikace Excel
  • Jedna buลˆka
  • ล˜รกdek nebo sloupec bunฤ›k
  • Vรฝbฤ›r bunฤ›k
  • 3D rozsah
  • Chcete-li manipulovat s hodnotami bunฤ›k, Nemovitosti a Metody se pouลพรญvajรญ
  • Vlastnost uklรกdรก informace o objektu
  • Metoda je akce objektu, kterรฝ bude provรกdฤ›t, jako je vรฝbฤ›r, slouฤenรญ, tล™รญdฤ›nรญ atd.
  • VBA se ล™รญdรญ vzorem hierarchie objektลฏ a odkazuje na objekt v aplikaci Excel pomocรญ operรกtoru .dot
  • Vlastnost rozsahu lze pouลพรญt ve dvou rลฏznรฝch typech objektลฏ
  • Objekty listu
  • Rozsah objektลฏ

Shrลˆte tento pล™รญspฤ›vek takto: