Verzi této aplikace pro Microsoft Excel 97 najdete v článku 157346.Verzi této aplikace pro Microsoft Excel 98 najdete v článku 182482.
Příznaky
V Microsoft Office Excelu nemusí správně fungovat kód makra jazyka VBA (Microsoft Visual Basic for Applications), který je na listu nebo v sešitu.
Příčina
K tomu dojde, pokud platí obě následující podmínky:
-
Daný kód je obsažen uvnitř automaticky spouštěné podrutiny, například Auto_Open nebo podrutiny Auto_Close .
-
Kód není obsažen v modulu Visual Basic, ale "za" list nebo sešit samotný.
Alternativní řešení
Aby automaticky spouštěné podrutiny správně fungovaly v aplikaci Microsoft Excel, musí být součástí modulu Visual Basic. Do sešitu musíte vložit modul jazyka Visual Basic a pak tento kód umístit do nového modulu. Vložení modulu Visual Basic:
-
V aplikaci Project Explorer v editoru jazyka Visual Basic aktivujte sešit, který obsahuje daný kód.
-
V nabídce Vložit klikněte na modul.
Po vložení nového modulu vyjměte kód z jeho původního umístění a vložte ho do modulu Visual Basic. Potom sešit uložte.
Další informace
Kód jazyka VBA může být v Excelu uložený ve třech různých umístěních: v modulu Visual Basic v modulu třídy jazyka Visual Basic a v listech a sešitech. Úprava kódu "za" v listu nebo sešitu:
-
Aktivace editoru jazyka Visual Basic (stiskněte kombinaci kláves ALT + F11)
-
V okně Průzkumníka projektu uvidíte položky podobné následujícím:
VBAProject (Book1) Microsoft Excel Objects Sheet1 (Sheet1) Sheet2 (Sheet2) Sheet3 (Sheet3) ThisWorkbook Modules Module1
Pokud poklepete na jeden z názvů listů nebo ThisWorkbook, můžete zadat kód do okna kód. Kód, který není obsažen v modulu Visual Basic, se považuje za "za" list neboThisWorkbook . Pokud se Auto_Open, Auto_Closenebo jiná automaticky spuštěná podrutina uloží "za" list nebo ThisWorkbook, nemusí při otevření nebo zavření sešitu fungovat správně, nebo když provedete akci, která by mohla způsobit spuštění podrutiny.