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

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

Pole ve VBA Excel

Videokurzy Excel

Ve spolupráci se SEDUO jsem vytvořil několik videokurzů:

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







Sdílejte

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

Nové články

25.03.2017:
ROUNDUP, ROUNDDOWN - zaokrouhlování

07.04.2017:
Řazení Excel - bug - problém

09.04.2017:
Podmínkové funkce Excel - bug - problém


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 - 2017 | 25224

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