Přeskočit navigaci | Přeskočit na novinky

Nový videokurz na Seduo: Excel pro začátečníky

     

Jste zde: Úvodní stránka » excel » vba-teorie-zaklady » excel-vba-pole

Pole ve VBA Excel


co je a jak využít pole v VBA MS Excelu - nejedná se o pole ropná :)

Úvodem co je pole

Pole je indexovaná skupina nějakých dat. Tato skupina se chová jako by šlo o jednu proměnou, která má několik položek. Na jednotlivé položky se poté odkazuje pomocí indexu.

Pole se začíná standartně indexovat od nuly 0. Je pravda, že tohle lze změnit, ale nedoporučuji to. Udělá to více škody než užitku.

Pole - příklad jedna

Máme pole o deseti položkách můžeme jej deklarovat (Poznámka: Nezapomeňte - začíná se počítat od nuly)

Dim MojePole (9) As Boolean

nebo

Dim MojePole (0 To 9) As Boolean

oba zápisy jsou vícemeně identické záleží co komu vyhovuje.

Pole - příklad 2

Máme seznam faktur za roky 2009 - 2011, můžeme si indexování pole posunout.

Dim FakturyPole (2009 To 2011) As Double

Pole - příklad 3

Dinamické pole pokud neznáme přesně počet prvků. Například potřebuji načíst seznam listů.

Dim ListPole () As Double

Posunutí indexování

Potřebujeme-li indexovat pole od jedničky doporučuji použít kód

Dim MojePole (1 To 10) As String

Je pravda že existuje i jiná možnost v posunutí indexování

Option Base 1

Tohle uvádím jen na doplnění v případě, že se s tímto zápisem setkáte u konkurenčních VBA programů. Osobně tohle nedoporučuji.

Odkazování na pole

Odkazování na pole je jednoduché. Předpokladáme z příkladu 3 vkládaní jmen listu do našeho pole.

ListPole(i) = ....

Kde i je index

Vícerozměrná pole

Pole o pevné velikosti (Integer) o 10 řádcích a 10 sloupcích:

Dim MojePole(9, 9) As Integer

nebo:

Dim MojePole(0 To 9, 0 To 9) As Integer

Poznámka: V jazyku Visual Basic lze deklarovat pole až o 60 rozměrech. Osobně si nedokážu představit jak s polem o 60-ti rozměrech pracovat a případně v něm hledat chybu.

Platnost polí

Podobně jako konstanty lze pomocí příkazů Dim, Static, Private, nebo Public nastavit platnost.

Závěrem

Základy na k práci s poli jsem probral, na případné dotazy jsou komentáře.

Článek byl aktualizován: 01.11.2014 14:37

Odměna

Ušetřil vám tento web čas, peníze? Pomohl vyřešit problém? Jste ochotni poskytnout symbolickou odměnu na další rozvoj? Vybrte si formu odměny, která vám vyhovuje.


Pavel Lasák

Pavel Lasák - autor webu

Microsoft Office (Word, Excel, PowerPoint) se věnuji od roku 2006. Své vědomosti a zkušenosti dávám k dispozici na různých školeních a konzultacích, ale také na tomto webu. K dispozici na tomto webu je mnoho návodu, tipů a triků včetně desítek různých šablon.

   Pavel Lasák LinkedIn Profil    Pavel Lasák Google+ Profil    Pavel Lasák facebook Profil    Pavel Lasák twitter Profil

Doporučte tento článek přátelům

Pokud vám článek pomohl, případně si myslíte, že může pomoci i někomu dalšímu, budu rád když jej sdílením doporučíte přátelům - děkuji:



Komentáře


Ondřej

Přidáno: 05.02.15 17:39

Dobrý den, při začátku práce s polem jsem hned narazil na problém. Při proceduře mi vyběhne chybove hlaseni run-time error 9- subscript out of range na řádkujmeno_zamestnance(i) = TextBox1.Text Private Sub CommandButton1_Click() Dim i As Integer Dim jmeno_zamestnance() As String i = 0 i = i + 1 jmeno_zamestnance(i) = TextBox1.Text ListBox1.AddItem (jmeno_zamestnance(i)) TextBox1.Text = "" End Sub

Jojo

Přidáno: 06.02.15 08:54

To Ondřej: -- Private Sub CommandButton1_Click() Dim i As Integer Dim jmeno_zamestnance() As String i = 1 ReDim jmeno_zamestnance(i) jmeno_zamestnance(i) = TextBox1.Text ListBox1.AddItem (jmeno_zamestnance(i)) TextBox1.Text = "" End Sub


Přidání nového komentáře

Poznámka: Z časových důvodu není v mých sílách zodpovědět všechny dotazy. Děkuji za pochopení.




(vlož číslo padesátpět)

Z bezpečnostních důvodu dočasně nemůžete použít HTML značky, kromě <code> a </code> (pro vkládání VBA kódu). Děkuji za pochopení.
Děkuji, za Vaše komentáře.

Za obsah komentářů neodpovídám, jelikož jsou komentáře publikovány ihned po jejich napsání čtenářem. Toto nemohu nijak ovlivnit. Přesto si vyhrazuji možnost jakýkoli neslušný komentář smazat bez udání důvodu. V komentářích si tykáme. ;-)






Sdílejte

Pomohl Vám návod?
Sdílejte na Facebooku, G+
LinkedIn...

Nové články


Newsletter

Přihlaste se odběru novinek a získejte:
Ebook zdarma -
10 kroků ke zvládnutí (Word, Excel, PowerPoint)
Šipka Kniha 3D Více o ebooku ...

TOPlist Licence Creative Commons webarchiv rss XML

Stránky o MS Office (Excel) produktu společnosti Microsoft. Neslouží jako technická podpora.
| Email na autora: pavel.lasak@gmail.com | Copyright © : Pavel Lasák 2004 - 2016 | 22369

Tento web zatím neprošel jazykovou korekturou. Beta verze redakčního systému.