Počítače

Excel VBA: Vytvoření hlavní nabídky

Autor: Laura McKinney
Datum Vytvoření: 4 Duben 2021
Datum Aktualizace: 16 Smět 2024
Anonim
Axel Thesleff - Bad Karma
Video: Axel Thesleff - Bad Karma

Obsah

Používám VBA / VB.Net k vytváření lepších způsobů, jak dosáhnout každodenních úkolů

Vytvoření nabídky

První část tvorby nabídky je ta nejjednodušší. Vytvořte list s názvem „Hlavní nabídka“ a vložte jej do prvního slotu na liště záložek listu ve spodní části obrazovky (je to index 1). Na tomto listu vytvořte svou nabídku, zatím ji ponecháme základní a budeme mít 3 tlačítka odkazující na různé listy v sešitu, jak je uvedeno níže

Jakmile vytvoříte hlavní nabídku, je čas začít psát nějaký kód VBA, aby tlačítka dělaly to, co chceme.

  • Otevřete editor VBA (ALT + F11)
  • V Okno projektu (Levé horní okno), klikněte pravým tlačítkem a vyberte „Vložit" a pak Modul (ne modul třídy!)

Každé tlačítko bude vyžadovat vlastní kód, tyto kódy můžete seskupit do souboru Modul právě jste vytvořili a zavoláte každému zvlášť. Začněme tedy tlačítkem, které otevře List 2.


Nejprve poklepejte na Modul 1 v Okno projektu, v levém dolním okně (Okno Vlastnosti), přejmenujte modul na „Menu_Buttons“

Následující kód otevře list 2:

Veřejné dílčí listy Open_Sheet_2 () („List2“). Aktivovat koncový díl

Pojďme se tedy rychle podívat, z čeho se tento kód skládá. Za prvé, je opravdu dobré si zvyknout na vhodné pojmenovávání svých rutin. „Open_Sheet_2“ je pěkný a snadno zapamatovatelný a poskytuje podrobnosti o tom, co rutina dělá.

Řádek 3 je řádek, který dělá veškerou práci, část „Listy (“ kódu říká VBA, že se chystáte pojmenovat list, mezi uvozovkami je pak název listu, jak se zobrazuje v aplikaci Excel. Jakmile Uzavřeli jsme uvozovky a závorky, značka „.Activate“ pak řekne VBA, že chcete pojmenovaný list přenést do hlavního zaměření sešitu.

Se všemi ostatními tlačítky by váš kód měl vypadat asi takto:


Veřejné dílčí Open_Sheet_2 () listy ("List2"). Aktivovat koncové dílčí Veřejné dílčí Open_Sheet_3 () Tabulky ("List3"). Aktivovat koncové dílčí veřejné dílčí Open_Sheet_4 () Listy ("List4"). Aktivovat koncové dílčí

Nyní musíme propojit kód s tlačítky, to je velmi snadné! Klikněte pravým tlačítkem na tlačítko a vyberte „Přiřadit makro". V zobrazené nabídce vyberte příslušnou rutinu ze seznamu, takže pro List 2 vyberte"Open_Sheet_2"ze seznamu.

Nyní to kliknutím vyzkoušejte!

Skrytí listů z panelu karet

Řekněme, že máte 40 sešitů v sešitu, i když máte hlavní nabídku, stále je neuspořádané dívat se na všechny tyto listy ve spodní části. Můžeme přidat o něco více kódu k tomu, co již máme, a ještě jedno tlačítko a budeme moci skrýt všechny listy jediným kliknutím! Když je list vybrán z hlavní nabídky, ve spodní části se znovu zobrazí karta listu.

Vytvořte nové tlačítko v hlavní nabídce s textem „Zavřít všechny karty“:


Ve stejné Modul udělali jste dříve, přidejte následující kód:

Public Sub Close_All_Sheets () 'Níže uvedený kód uvádí, že každý list, který se objeví v' aktivním sešitu, by měl být zkontrolován, aby se zjistilo, zda je jeho název stejný 'jako "Hlavní nabídka". Pokud tomu tak není, nastavte jeho viditelnost na hodnotu false Pro každý list v ActiveWorkbook.Worksheets Pokud Worksheet.Name> "Hlavní nabídka", pak Worksheet.Visible = False Další End Sub

Vzhledem k tomu, že komentáře jsou ve stavu kódu, tento kód zkontroluje všechny listy a zavře je, pokud se nenazývají „Hlavní nabídka“. Nyní musíte přiřadit toto makro tlačítku. Opět klikněte pravým tlačítkem na tlačítko „Zavřít všechny karty“ a přiřaďte makro „Close_All_Sheets“.

Klikněte na tlačítko a sledujte, jak se všechny listy zavírají!

Nyní zbývá jen přidat kód, který tlačítkům listu řekne, aby odkryl list, který chcete otevřít:

Public Sub Open_Sheet_2 () Sheets ("Sheet2"). Visible = True 'The above line makes the sheet' again visible Sheets ("Sheet2"). Activate End Sub Public Sub Open_Sheet_3 () Sheets ("Sheet3"). Visible = True „Výše uvedený řádek opět zviditelní list“ Listy („List3“). Aktivovat koncový díl veřejný Sub Open_Sheet_4 () Listy („List4“). Visible = True 'Díky výše uvedenému řádku bude list znovu viditelný Listy („List4“) ) .Activate End Sub Public Sub Close_All_Sheets () 'Níže uvedený kód uvádí, že každý list, který se objeví v' aktivním sešitu, by měl být zkontrolován, aby se zjistilo, zda je jeho název stejný 'jako "Hlavní nabídka". Pokud tomu tak není, nastavte jeho viditelnost na hodnotu false Pro každý list v ActiveWorkbook.Worksheets Pokud Worksheet.Name> "Hlavní nabídka", pak Worksheet.Visible = False Další End Sub

Díky výše uvedenému dokončenému kódu nyní máte plně funkční systém nabídek, který automaticky odkrývá jakýkoli list, a navíc možnost rychle skrýt všechny otevřené listy.

Jak jsi se dostal?

Doporučeno Pro Tebe

Zajímavý

Základní vlastnosti pro online konverzaci
Internet

Základní vlastnosti pro online konverzaci

Zakladatel a tratég ob ahu pro Damašek Way Recovery a Mormon Apologia. Ob ah p aní e zaměřením na do pívání ve víře a duchovno tiLid ké byto ti j ou od pří...
Jak přejmenovat jednotku USB Flash
Počítače

Jak přejmenovat jednotku USB Flash

Patrick, počítačový technik, je oddaný pi ovatel, který i přeje zlepšit vět informováním jednotlivců, kteří hledají více znalo tí.Než e naučíme, ...