Vytvářejte nové sešity pomocí jazyka VBA v aplikaci Microsoft Excel

Anonim

Mohou nastat případy, kdy potřebujete vytvořit nový sešit s určitým počtem listů prostřednictvím kódu nebo makra vba. Zde je jednoduché makro, které vám umožní vytvořit nový sešit> otevřít a poté uložit s maximálně 255 novými listy. V tomto ukázkovém makru vytvoříme nový sešit s 10 listy.

Možnost Explicitní

Sub create_workbook ()
Dim wb jako sešit
Nastavit wb = NewWorkbook (10)
End Sub

Funkce NewWorkbook (wsCount As Integer) jako sešit
Dim OriginalWorksheetCount jako dlouhý
Nastavit NewWorkbook = Nic
Pokud wsCount 255 Then Exit Function
OriginalWorksheetCount = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = wsCount
Nastavit NewWorkbook = Workbooks.Add
Application.SheetsInNewWorkbook = OriginalWorksheetCount
Koncová funkce

Vysvětlení kódu:

Nejprve máme postup nazvaný „create_workbook“. V tomto postupu máme jako sešit proměnnou wb a prostřednictvím této proměnné voláme funkci NewWorkbook. Volá se tedy nová funkce a počet wscount je nastaven na 10, což je počet listů v novém sešitu.

Poté přejdeme na volanou funkci, která je Funkce NewWorkbook (wsCount jako Integer) jako sešit. Hodnota wsCount, která je 10, se předává z dílčího souboru create_workbook.

Nastavit NewWorkbook = Nic

NewWorkbook je nejprve nastaven na nic, abychom mohli vymazat jakoukoli jinou hodnotu, která by mu mohla být přiřazena v jakýchkoli předchozích kódech.

Pokud wsCount 255, pak Ukončit funkci

Dále musíme zkontrolovat, zda hodnota předaná ze sub je menší než 1 nebo větší než 255. Pokud je odpověď na kteroukoli z těchto kontrol ano, ukončete funkci.
OriginalWorksheetCount = Application.SheetsInNewWorkbook

Na stránce možností aplikace Excel je parametr, kde je nastaven počet listů, které mají být zahrnuty do nového sešitu. Tuto hodnotu předáme proměnné OriginalWorksheetCount.Proměnná bude obsahovat výchozí počet listů, který byl již přednastaven v možnostech aplikace Excel.

Application.SheetsInNewWorkbook = wsCount

Poté přiřadíme hodnotu wsCount, která je předána ze sub, parametru v možnostech aplikace Excel pro počet listů, které mají být zahrnuty do nového sešitu. Nyní se tedy tento parametr změní ze staré hodnoty na 10. Stará hodnota může být 1 nebo 3 nebo jakékoli jiné číslo nastavené uživatelem.

Nastavit NewWorkbook = Workbooks.Add

Vytvoříme nový sešit, který je přiřazen k NewWorkbook. Tento nový sešit je vytvořen s počtem listů uvedeným v wsCount. Uvidíte nový sešit s 10 listy s názvem List1 až List10. Na níže uvedeném obrázku naleznete nový soubor Book3, který byl vytvořen.

Následující obrázek vám ukáže počet listů, které byly vytvořeny v novém sešitu.

Také číslo 10 se zobrazí v parametru Application.SheetsInNewWorkbook v Možnosti aplikace Excel jako na obrázku níže -

Application.SheetsInNewWorkbook = OriginalWorksheetCount

TheApplication.SheetsInNewWorkbook se vrátí na své původní číslo, které bylo přítomno před nastavením wsCount. Pokud tedy původní číslo bylo 1 nebo 3, tento parametr se nyní vrátí k tomuto číslu.

Pokud se vám naše blogy líbily, sdílejte je se svými přáteli na Facebooku. A také nás můžete sledovat na Twitteru a Facebooku.
Rádi bychom od vás slyšeli, dejte nám vědět, jak můžeme zlepšit, doplnit nebo inovovat naši práci a zlepšit ji pro vás. Napište nám na e -mailový web