Funkce jazyka VBA SpecialCells(xlCellTypeBlanks) nefunguje v Excelu podle očekávání.
Příznaky
Když vytvoříte makro jazyka VBA (Microsoft Visual Basic for Applications), které vybere více nesouvislých oblastí v sešitu aplikace Microsoft Excel, který používá výraz jazyka VBA podobný následujícímu, akce, které měly proběhnout pouze u nesouvislých buněk, proběhnou u každé buňky původního výběru na listu:
expression.SpecialCells(XlCellType).expression XlCellType
může mít některou z následujících možností:
- xlCellTypeAllFormatConditions
- xlCellTypeAllValidation
- xlCellTypeBlanks
- xlCellTypeComments
- xlCellTypeConstants
- xlCellTypeFormulas
- xlCellTypeSameFormatConditions
- xlCellTypeSameValidation
- xlCellTypeVisible
Příčina
K tomuto chování dochází, pokud vyberete více než 8 192 nesouvislých buněk s makry. Excel podporuje maximálně 8 192 nesouvislých buněk prostřednictvím maker jazyka VBA.
Pokud se pokusíte ručně vybrat více než 8 192 nesousehlých buněk, obvykle se zobrazí následující chybová zpráva:
Výběr je příliš velký.
Pokud však použijete makro VBA k provedení stejného nebo podobného výběru, nevyvolá se žádná chybová zpráva a negeneruje se žádný kód chyby, který by bylo možné zachytit prostřednictvím obslužné rutiny chyby.
Řešení
Chcete-li toto chování obejít, můžete v makrech jazyka VBA vytvořit strukturu smyčky, která zpracovává méně než maximálně 8 192 buněk.
Stav
Toto chování je záměrné.
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro