Editor Visual Basic - Ako ho otvoriť a používať v programe Excel

Prvým krokom k práci s VBA v programe Excel je zoznámiť sa s editorom jazyka Visual Basic (tiež nazývaným editorom VBA alebo VB).

V tomto návode sa budem zaoberať všetkým, čo je potrebné vedieť o editore VBA a niektorými užitočnými možnosťami, ktoré by ste mali vedieť pri kódovaní v programe Excel VBA.

Čo je editor jazyka Visual Basic v programe Excel?

Visual Basic Editor je samostatná aplikácia, ktorá je súčasťou Excelu a otvára sa vždy, keď otvoríte zošit programu Excel. V predvolenom nastavení je skrytý a na prístup k nemu ho musíte aktivovať.

VB Editor je miesto, kde uchovávate kód VB.

Existuje niekoľko spôsobov, ako získať kód v editore VB:

  1. Keď zaznamenáte makro, automaticky vytvorí nový modul v editore VB a vloží kód do tohto modulu.
  2. VB kód môžete ručne napísať v editore VB.
  3. Kód môžete skopírovať z iného zošita alebo z internetu a vložiť ho do editora VB.

Otvorenie editora VB

Existuje niekoľko spôsobov, ako otvoriť editor jazyka Visual Basic v programe Excel:

  1. Používanie klávesovej skratky (najľahšie a najrýchlejšie)
  2. Pomocou karty Vývojár.
  3. Použitie kariet pracovného hárka.

Poďme si rýchlo prejsť každú z nich.

Klávesová skratka na otvorenie editora jazyka Visual Basic

Najjednoduchší spôsob, ako otvoriť editor jazyka Visual Basic, je použiť klávesovú skratku - ALT + F11 (podržte kláves ALT a stlačte kláves F11).

Hneď ako to urobíte, otvorí sa samostatné okno pre editor jazyka Visual Basic.

Táto skratka funguje ako prepínač, takže keď ju znova použijete, dostanete sa späť do aplikácie Excel (bez zatvorenia editora VB).

Skratka pre verziu Mac je Opt + F11 alebo Fn + Opt + F11

Pomocou karty Vývojár

Ak chcete otvoriť editor jazyka Visual Basic na páse s nástrojmi:

  1. Kliknite na kartu Vývojár (ak sa vám karta vývojára nezobrazuje, prečítajte si, ako ju získať).
  2. V skupine Kód kliknite na položku Visual Basic.

Použitie karty Pracovný list

Toto je menej používaná metóda na otvorenie editora Vb.

Prejdite na ľubovoľnú kartu pracovného hárka, kliknite pravým tlačidlom myši a vyberte položku „Zobraziť kód“.

Táto metóda neotvorí iba editor VB, ale tiež vás zavedie do okna kódu pre tento objekt pracovného hárka.

Je to užitočné, keď chcete napísať kód, ktorý funguje iba pre konkrétny pracovný hárok. To je zvyčajne prípad udalostí pracovného hárka.

Anatómia editora jazyka Visual Basic v programe Excel

Pri prvom otvorení editora VB to môže vyzerať trochu zdrvujúco.

Existujú rôzne možnosti a sekcie, ktoré sa na prvý pohľad môžu zdať úplne nové.

Tiež má starý vzhľad Excelu 97 dní. Aj keď sa Excel za tie roky ohromne zlepšil v dizajne a použiteľnosti, VB Editor nezaznamenal žiadnu zmenu vo vzhľade.

V tejto sekcii vás prevediem rôznymi časťami aplikácie Visual Basic Editor.

Poznámka: Keď som pred rokmi začal používať VBA, bol som úplne ohromený všetkými týmito novými možnosťami a oknami. Ale ako si zvyknete pracovať s VBA, s väčšinou z nich by ste sa uspokojili. A väčšinu času nebudete musieť použiť všetky možnosti, iba plnú ruku.

Nasleduje obrázok rôznych komponentov editora VB. Tieto sú potom podrobne popísané v nižšie uvedených častiach tohto tutoriálu.

Teraz si rýchlo prejdeme každú z týchto zložiek a pochopíme, čo robí:

Panel s ponukami

Tu máte všetky možnosti, ktoré môžete použiť v editore VB. Je to podobné ako na páse s nástrojmi programu Excel, kde máte na každej karte karty a možnosti.

Kliknutím na jednotlivé prvky ponuky môžete preskúmať dostupné možnosti.

Všimnite si, že väčšina možností vo VB editore má uvedené klávesové skratky. Keď si zvyknete na niekoľko klávesových skratiek, práca s editorom VB bude skutočne jednoduchá.

Panel nástrojov

V predvolenom nastavení je v editore VB panel s nástrojmi, ktorý ponúka niekoľko užitočných možností, ktoré budete pravdepodobne potrebovať najčastejšie. Je to rovnaké ako panel s nástrojmi Rýchly prístup v programe Excel. Poskytuje vám rýchly prístup k niektorým užitočným možnostiam.

Môžete ho trochu prispôsobiť odstránením alebo pridaním možností (kliknutím na malú šípku smerujúcu nadol na konci panela s nástrojmi).

Pri práci s editorom VB vám vo väčšine prípadov stačí predvolený panel s nástrojmi.

Panel s nástrojmi môžete presunúť nad panel s ponukami tak, že kliknete na tri sivé bodky (na začiatku panela s nástrojmi) a potiahnete ho nad panel s ponukami.

Poznámka: V editore VB sú štyri panely nástrojov - štandardný, ladiaci, upravovací a užívateľský. To, čo vidíte na obrázku vyššie (čo je tiež predvolené), je štandardný panel nástrojov. Na ďalšie panely s nástrojmi sa dostanete tak, že prejdete na možnosť Zobraziť a umiestnite kurzor myši na možnosť Panely s nástrojmi. Ak chcete, do editora VB môžete pridať jeden alebo viac panelov s nástrojmi.

Prieskumník projektu

Project Explorer je okno vľavo, ktoré zobrazuje všetky objekty aktuálne otvorené v programe Excel.

Keď pracujete s Excelom, každý otvorený zošit alebo doplnok je projekt. A každý z týchto projektov môže mať v sebe zbierku predmetov.

Napríklad na obrázku nižšie Prieskumník projektov ukazuje dva otvorené zošity (Kniha1 a Kniha2) a objekty v každom zošite (pracovné listy, Tento pracovný stôl a Modul v Knihe1).

Naľavo od objektov je ikona plus, ktorú môžete použiť na zbalenie zoznamu objektov alebo rozbalenie a zobrazenie kompletného zoznamu objektov.

Nasledujúce objekty môžu byť súčasťou Prieskumníka projektu:

  1. Všetky otvorené zošity - v každom zošite (ktorý sa nazýva aj projekt) môžete mať nasledujúce objekty:
    • Objekt pracovného hárka pre každý pracovný list v zošite
    • Tento objekt Pracovnej knihy čo predstavuje samotný zošit
    • Graf predmet pre každý list grafu (nie sú také bežné ako pracovné listy)
    • Moduly - Tu smeruje kód generovaný záznamom makier. Môžete tu tiež napísať alebo skopírovať alebo vložiť kód VBA.
  2. Všetky otvorené doplnky

Považujte Project Explorer za miesto, ktoré popisuje všetky objekty otvorené v programe Excel v danom čase.

Klávesová skratka na otvorenie programu Project Explorer je Ovládanie + R. (podržte ovládací kláves a potom stlačte kláves R). Ak ho chcete zavrieť, kliknite jednoducho na ikonu zatvorenia v pravom hornom rohu okna Project Explorer.

Poznámka: Pre každý objekt v programe Project Explorer existuje okno s kódom, do ktorého môžete napísať kód (alebo ho odniekiaľ skopírovať a prilepiť). Okno s kódom sa zobrazí, keď dvakrát kliknete na objekt.

Okno vlastností

V okne vlastností sa zobrazia vlastnosti vybraného objektu. Ak ešte nemáte okno Vlastnosti, môžete ho získať pomocou klávesovej skratky F4 (alebo prejdite na kartu Zobraziť a kliknite na okno Vlastnosti).

Okno vlastností je plávajúce okno, ktoré môžete ukotviť v editore VB. V nižšie uvedenom príklade som ho ukotvil tesne pod Project Explorer.

Okno vlastností nám umožňuje zmeniť vlastnosti vybraného objektu. Ak napríklad chcem vytvoriť skrytý (alebo veľmi skrytý) pracovný hárok, môžem to urobiť zmenou viditeľnej vlastnosti vybratého objektu pracovného hárka.

Súvisiace: Skrytie pracovného hárka v programe Excel (nedá sa ľahko odhaliť)

Okno s kódom

Pre každý objekt, ktorý je uvedený v programe Project Explorer, existuje okno s kódom. Okno s kódom pre objekt môžete otvoriť dvojitým kliknutím na neho v oblasti Prieskumník projektu.

V okne s kódom napíšete kód alebo skopírujete a prilepíte kód odinakiaľ.

Keď zaznamenávate makro, jeho kód sa vloží do okna kódu modulu. Excel pri zázname makra automaticky vloží modul, do ktorého doň vloží kód.

Súvisiace: Ako spustiť makro (kód VBA) v programe Excel.

Okamžité okno

Okno Okamžité sa väčšinou používa pri ladení kódu. Jedným zo spôsobov, ako môžem použiť okno Okamžité, je použitie príkazu Print.Debug v kóde a spustenie kódu.

Pomáha mi to ladiť kód a určiť, kde sa môj kód zasekne. Ak dostanem výsledok Print.Debug v bezprostrednom okne, viem, že kód fungoval najmenej do tohto riadka.

Ak ste novým kódovaním VBA, môže vám chvíľu trvať, kým použijete okamžité okno na ladenie.

V predvolenom nastavení nie je bezprostredné okno v editore VB viditeľné. Môžete to získať pomocou klávesovej skratky Control + G (alebo môžete prejsť na kartu Zobraziť a kliknúť na „Okamžité okno“).

Kde pridať kód v editore VB

Dúfam, že teraz máte základné znalosti o tom, čo je editor VB a aké sú všetky jeho časti.

V tejto časti tohto tutoriálu vám ukážem, kam pridať kód VBA v editore jazyka Visual Basic.

Existujú dve miesta, kde môžete pridať kód VBA do programu Excel:

  1. Okno kódu pre objekt. Tieto objekty môžu byť zošit, pracovný hárok, užívateľský formulár atď.
  2. Okno kódu modulu.

Okno kódu modulu vs. okno kódu objektu

Dovoľte mi najskôr rýchlo objasniť rozdiel medzi pridaním kódu do modulu a pridaním kódu do okna objektového kódu.

Keď do ktoréhokoľvek z objektov pridáte kód, závisí to od nejakej akcie tohto objektu, ktorá tento kód spustí. Ak napríklad chcete odkryť všetky pracovné hárky v zošite hneď, ako tento zošit otvoríte, kód by sa vložil do objektu ThisWorkbook (ktorý predstavuje zošit).

Spúšťačom je v tomto prípade otvorenie zošita.

Podobne, ak chcete chrániť pracovný hárok hneď, ako sa aktivuje iný pracovný hárok, príslušný kód pôjde do okna s kódom pracovného hárka.

Tieto spúšťače sa nazývajú udalosti a môžete priradiť kód, ktorý sa má vykonať, keď dôjde k udalosti.

Súvisiace: Získajte viac informácií o udalostiach vo VBA.

Naopak, kód v module je potrebné vykonať buď ručne (alebo je možné ho zavolať aj z iných podprogramov).

Keď zaznamenávate makro, Excel automaticky vytvorí modul a vloží do neho zaznamenaný kód makra. Ak teraz musíte spustiť tento kód, musíte makro spustiť ručne.

Pridanie kódu VBA do modulu

Kým záznam makra automaticky vytvorí modul a vloží do neho kód, pri použití záznamníka makier existujú určité obmedzenia. Nemôže napríklad používať slučky alebo podmienky If Then Else.

V takýchto prípadoch je lepšie kód skopírovať a prilepiť ručne alebo ho napísať sami.

Modul je možné použiť na uchovávanie nasledujúcich typov kódov VBA:

  1. Vyhlásenia: V module môžete deklarovať premenné. Deklarácia premenných vám umožňuje určiť, aký typ údajov môže premenná obsahovať. Premennú môžete deklarovať iba pre čiastkovú rutinu alebo pre všetky čiastkové rutiny v module (alebo všetkých moduloch)
  2. Podprogramy (postupy): Toto je kód, ktorý obsahuje kroky, ktoré má VBA vykonať.
  3. Funkčné postupy: Toto je kód, ktorý vracia jednu hodnotu a môžete ho použiť na vytváranie vlastných funkcií (nazývaných aj funkcie definované používateľom alebo UDF vo VBA)

Štandardne nie je modul súčasťou zošita. Pred použitím ho musíte najskôr vložiť.

Pridanie modulu do editora VB

Nasledujú kroky na pridanie modulu:

  1. Kliknite pravým tlačidlom myši na ľubovoľný objekt zošita (v ktorom chcete modul).
  2. Ukážte kurzorom na možnosť Vložiť.
  3. Kliknite na modul.

Tým by sa okamžite vytvoril priečinok s názvom Modul a vložil by sa objekt s názvom Modul 1. Ak už máte modul vložený, vyššie uvedené kroky by vložili ďalší modul.

Akonáhle je modul vložený, môžete dvakrát kliknúť na objekt modulu v Prieskumníkovi projektov a otvorí sa mu okno s kódom.

Teraz môžete kód skopírovať alebo prilepiť alebo ho napísať sami.

Demontáž modulu

Nasledujú kroky na odstránenie modulu v programe Excel VBA:

  1. Kliknite pravým tlačidlom myši na modul, ktorý chcete odstrániť.
  2. Kliknite na možnosť Odstrániť modul.
  3. V dialógovom okne, ktoré sa otvorí, kliknite na Nie.

Poznámka: Modul môžete exportovať pred jeho odstránením. Uloží sa ako súbor .bas a môžete ho importovať do iného projektu. Ak chcete exportovať modul, kliknite naň pravým tlačidlom myši a kliknite na položku „Exportovať súbor“.

Pridanie kódu do okna objektového kódu

Ak chcete otvoriť okno kódu pre objekt, dvakrát naň kliknite.

Keď sa otvorí, môžete kód zadať manuálne alebo ho skopírovať a vložiť z iných modulov alebo z internetu.

Všimnite si toho, že niektoré objekty vám umožňujú vybrať si udalosť, pre ktorú chcete napísať kód.

Ak napríklad chcete napísať kód, aby sa niečo stalo, keď sa výber zmení v pracovnom hárku, musíte najskôr vybrať pracovné listy z rozbaľovacej ponuky v ľavej hornej časti okna kódu a potom z rozbaľovacej ponuky vybrať udalosť zmeny. -dole vpravo.

Poznámka: Tieto udalosti sú špecifické pre objekt. Keď otvoríte okno kódu pre zošit, uvidíte udalosti súvisiace s objektom zošita. Keď otvoríte okno kódu pre list, uvidíte udalosti súvisiace s objektom listu.

Prispôsobenie editora VB

Aj keď sú predvolené nastavenia editora jazyka Visual Basic pre väčšinu používateľov dosť dobré, umožňujú vám ďalej prispôsobiť rozhranie a niekoľko funkcií.

V tejto časti tutoriálu vám ukážem všetky možnosti, ktoré máte pri prispôsobovaní editora VB.

Ak chcete prispôsobiť prostredie editora VB, kliknite na paneli s nástrojmi na položku Nástroje a potom kliknite na položku Možnosti.

Tým sa otvorí dialógové okno Možnosti, ktoré vám poskytne všetky možnosti prispôsobenia v editore VB. Dialógové okno „Možnosti“ má štyri karty (ako je uvedené nižšie), ktoré majú pre editor jazyka Visual Basic rôzne možnosti prispôsobenia.

Poďme si rýchlo prejsť každú z týchto kariet a dôležité možnosti na každej z nich.

Tabuľka editora

Aj keď vstavané nastavenia vo väčšine prípadov fungujú dobre, dovoľte mi ešte prejsť si možnosti na tejto karte.

Keď sa naučíte pracovať s VBA v Exceli, možno budete chcieť prispôsobiť editor VB pomocou niektorých z týchto možností.

Automatická kontrola syntaxe

Keď pracujete s VBA v Exceli, hneď ako urobíte chybu syntaxe, privíta vás vyskakovacie dialógové okno (s nejakým popisom chyby). Niečo, ako je uvedené nižšie:

Ak vypnete túto možnosť, toto kontextové okno sa nezobrazí, aj keď urobíte chybu syntaxe. Došlo by však k zmene farby v texte kódu, čo znamená, že došlo k chybe.

Ak ste začiatočník, odporúčame vám ponechať túto možnosť povolenú. Keď budete mať s kódovaním skúsenosti, môže vás začať tieto pop-up boxy dráždiť a potom môžete túto možnosť vypnúť.

Vyžadovať variabilné vyhlásenie

Túto možnosť odporúčam povoliť.

Pri práci s VBA by ste pomocou premenných uchovávali rôzne typy údajov a objekty.

Keď povolíte túto možnosť, automaticky vloží príkaz „Explicitná voľba“ do hornej časti okna kódu. To vás prinúti deklarovať všetky premenné, ktoré vo svojom kóde používate. Ak deklarujete premennú a pokúsite sa spustiť kód, zobrazí sa chyba (ako je uvedené nižšie).

Vo vyššie uvedenom prípade som použil premennú Var, ale nedeklaroval som ju. Keď sa teda pokúsim spustiť kód, zobrazí sa chyba.

Táto možnosť je veľmi užitočná, ak máte veľa premenných. Pomáha mi často nájsť nesprávne napísané názvy premenných, pretože sú považované za nedeklarované a zobrazuje sa chyba.

Poznámka: Keď povolíte túto možnosť, nebude to mať vplyv na existujúce moduly.

Člen automatického zoznamu

Táto možnosť je veľmi užitočná, pretože vám pomôže získať zoznam vlastností metód pre objekt.

Napríklad, ak chcem odstrániť pracovný list (List1), musím použiť riadok List1.Delete.

Kým píšem kód, hneď ako zadám bodku, zobrazí mi všetky metódy a vlastnosti súvisiace s objektom Pracovný list (ako je uvedené nižšie).

Funkcia automatického zoznamu je skvelá, pretože vám umožňuje:

  • Rýchlo vyberte vlastnosť a metódu zo zoznamu a šetrí čas
  • Ukáže vám všetky vlastnosti a metódy, o ktorých možno neviete
  • Vyhnite sa pravopisným chybám

Táto možnosť je predvolene povolená a odporúčam ju ponechať tak.

Možnosti automatických rýchlych informácií

Keď zadáte funkciu do pracovného hárka programu Excel, zobrazí sa vám niekoľko informácií o danej funkcii - napríklad o jej argumentoch.

Podobne, keď zadáte funkciu vo VBA, zobrazí vám niektoré informácie (ako je uvedené nižšie). Aby sa to však stalo, musíte sa uistiť, že je povolená možnosť Automatické rýchle informácie (čo je predvolene).

Možnosti tipov pre automatické údaje

Keď prechádzate kódom po riadkoch a umiestnite kurzor nad názov premennej, zobrazí sa vám hodnota premennej.

Považujem to za celkom užitočné pri ladení kódu alebo pri prechádzaní kódu riadok po riadku, v ktorom sú slučky.

V uvedenom príklade, akonáhle umiestnim kurzor na premennú (var), zobrazí sa hodnota, ktorú drží.

Táto možnosť je predvolene povolená a odporúčam ju ponechať tak.

Automatické odsadenie

Pretože kódy VBA môžu byť dlhé a chaotické, používanie odsadenia zvyšuje čitateľnosť kódu.

Pri písaní kódu môžete odsadiť pomocou klávesu tab.

Táto možnosť zaisťuje, že keď skončíte s odsadeným riadkom a stlačíte kláves Enter, ďalší riadok sa nezačne od úplného začiatku, ale bude mať rovnaké odsadenie ako predchádzajúci riadok.

V uvedenom prípade, keď napíšem riadok Debug.Print a stlačím kláves Enter, začne sa priamo pod ním (s rovnakou úrovňou odsadenia).

Považujem túto možnosť za užitočnú a jej vypnutie by znamenalo ručné odsadenie každého riadka v bloku kódu, ktorý chcem odsadiť.

Ak chcete, môžete zmeniť hodnotu odsadenia. Nechávam to na predvolenej hodnote.

Úpravy textu presúvaním

Keď je táto možnosť povolená, umožňuje vám vybrať blok kódu a pretiahnuť ho.

Šetrí čas, pretože ho nemusíte najskôr strihať a potom prilepovať. Môžete ho jednoducho vybrať a presunúť.

Táto možnosť je predvolene povolená a odporúčam ju ponechať tak.

Predvolené na zobrazenie celého modulu

Keď je táto možnosť povolená, budete môcť vidieť všetky postupy v module v jednom posúvateľnom zozname.

Ak túto možnosť zakážete, naraz budete môcť vidieť iba jeden modul. V rozbaľovacej ponuke v pravom hornom rohu okna kódu budete musieť vybrať modul, ktorý chcete vidieť.

Táto možnosť je predvolene povolená a odporúčam ju ponechať tak.

Jeden z dôvodov, prečo by ste to mohli chcieť deaktivovať, ak máte viacero procedúr, ktoré sú obrovské a ich posúvanie trvá, alebo keď máte veľa procedúr a chcete ich rýchlo nájsť, namiesto toho, aby ste strácali čas pri rolovaní.

Separátor postupu

Keď je táto možnosť povolená, uvidíte čiaru (druh oddeľovača) medzi dvoma postupmi.

Považujem to za užitočné, pretože to vizuálne ukazuje, kedy sa jeden postup končí a druhý začína.

Je to predvolene povolené a odporúčam to tak ponechať.

Karta Formát editora

Pomocou možností na karte Formát editora môžete prispôsobiť vzhľad kódu v okne kódu.

Osobne si ponechávam všetky predvolené možnosti, pretože mi to vyhovuje. Ak chcete, môžete to vyladiť podľa svojich preferencií.

Ak chcete vykonať zmenu, musíte najskôr vybrať možnosť v poli Farby kódu. Keď je vybratá možnosť, môžete pre ňu upraviť popredie, pozadie a farbu indikátora.

Na tejto karte je možné nastaviť aj typ a veľkosť písma. Odporúča sa použiť písmo s pevnou šírkou, ako napríklad Courier New, pretože zvyšuje čitateľnosť kódu.

Upozorňujeme, že nastavenie typu a veľkosti písma zostane rovnaké pre všetky typy kódov (tj. Pre všetky typy kódov uvedené v poli farby kódu).

Nasleduje obrázok, kde som vybral bod zlomu a môžem zmeniť jeho formátovanie.

Poznámka: Keď je možnosť Indikátor okraja povolená, zobrazuje sa vľavo od kódu malý pruh okraja. Je to užitočné, pretože ukazuje užitočné indikátory pri vykonávaní kódu. Vo vyššie uvedenom príklade, keď nastavíte zarážku, automaticky zobrazí červenú bodku vľavo od čiary na pruhu okraja. Alternatívne na nastavenie zarážky môžete jednoducho kliknúť na pruh okraja vľavo od riadka kódu, ktorý chcete použiť ako zarážku.

V predvolenom nastavení je panel indikátorov okraja povolený a odporúčam ho ponechať tak.

Jeden z mojich študentov kurzu VBA považoval tieto možnosti prispôsobenia za užitočné a bola farboslepá. Pomocou tu uvedených možností dokázala nastaviť farbu a formáty, ktoré jej uľahčili prácu s VBA.

Všeobecné Tab

Karta Všeobecné má veľa možností, ale nemusíte nič meniť.

Odporúčam vám ponechať všetky možnosti tak, ako sú.

Jednou z dôležitých možností, o ktorých by ste na tejto karte mali vedieť, je spracovanie chýb.

V predvolenom nastavení je vybratá možnosť „Prestávka pri neošetrených chybách“ a odporúčam ju ponechať tak.

Táto možnosť znamená, že ak sa vo vašom kóde vyskytne chyba a vy ste s touto chybou vo svojom kóde ešte nepracovali, potom sa zlomí a zastaví. Ak ste však chybu vyriešili (napríklad pomocou možností On Error Resume Next alebo On Error Goto), potom sa nerozbije (pretože s chybami sa nezaobchádza).

Dokovacia karta

Na tejto karte môžete určiť, ktoré okná chcete ukotviť.

Dokovanie znamená, že môžete polohu okna (napríklad prieskumníka projektu alebo okno Vlastnosti) opraviť tak, aby sa neplávalo okolo a aby ste mohli súčasne vidieť všetky rôzne okná.

Ak nezakotvíte v doku, budete si môcť zobraziť jedno okno naraz v režime celej obrazovky a budete musieť prepnúť na druhé.

Odporúčam ponechať predvolené nastavenia.

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave