Popis omezení pro práci s poli v Excelu

Souhrn

Ve verzích aplikace Microsoft Excel, které jsou uvedeny v části Platí pro, jsou v tématu nápovědy Specifikace výpočtů uvedena omezení pro práci s polem. Tento článek popisuje omezení polí v Excelu.

Další informace

V Excelu jsou matice v listech omezeny dostupnou pamětí s náhodným přístupem, celkovým počtem maticových vzorců a pravidlem "celý sloupec".

Dostupná paměť

Verze aplikace Excel uvedené v části "Platí pro" neukládají omezení velikosti polí listů. Místo toho jste omezeni pouze dostupnou pamětí v počítači. Proto můžete vytvořit velmi velká pole, která obsahují stovky tisíc buněk.

Pravidlo "celý sloupec"

I když můžete v Aplikaci Excel vytvořit velmi velká pole, nemůžete vytvořit matici, která používá celý sloupec nebo více sloupců buněk. Protože přepočítání maticového vzorce, který používá celý sloupec buněk, je časově náročné, aplikace Excel neumožňuje vytvořit tento druh matice ve vzorci.

Poznámka

V aplikaci Microsoft Office Excel 2003 a dřívějších verzích aplikace Excel je ve sloupci 65 536 buněk. V aplikaci Microsoft Office Excel 2007 je ve sloupci 1 048 576 buněk.

Maximální počet maticových vzorců

V aplikaci Excel 2003 a dřívějších verzích aplikace Excel může jeden list obsahovat maximálně 65 472 maticových vzorců, které odkazují na jiný list. Pokud chcete použít více vzorců, rozdělte data do více listů, aby na jeden list bylo méně než 65 472 odkazů.

Například v listu List1 sešitu můžete vytvořit následující položky:

  • 65 472 maticových vzorců, které odkazují na List2
  • 65 472 maticových vzorců, které odkazují na List3
  • 65 472 maticových vzorců, které odkazují na List4

Pokud se pokusíte vytvořit více než 65 472 maticových vzorců, které odkazují na konkrétní list, maticové vzorce, které zadáte za číslo maticového vzorce 65 472, můžou při jejich zadání zmizet.

Příklady maticových vzorců

Následuje seznam příkladů maticových vzorců. Pokud chcete použít tyto příklady, vytvořte nový sešit a potom zadejte každý vzorec jako maticový vzorec. Uděláte to tak, že zadáte vzorec do řádku vzorců a stisknutím kombinace kláves CTRL+SHIFT+ENTER vzorec zadáte.

Excel 2007

  • A1: =SUMA(KDYŽ(B1:B1048576=0;1;0))

    Vzorec v buňce A1 vrátí výsledek 1048576. Tento výsledek je správný.

  • A2: =SUMA(KDYŽ(B:B=0;1;0))

    Vzorec v buňce A2 vrátí výsledek 1048576. Tento výsledek je správný.

  • A3: =SUMA(KDYŽ(B1:J1048576=0;1;0))

    Vzorec v buňce A3 vrátí výsledek 9437184. Tento výsledek je správný.

    Poznámka

    Výpočet výsledku vzorce může trvat dlouho, protože vzorec kontroluje více než 1 milion buněk.

  • A4: =SUMA(KDYŽ(B:J=0;1;0))

    Vzorec v buňce A4 vrátí výslednou 9437184. Tento výsledek je správný.

    Poznámka

    Výpočet výsledku vzorce může trvat dlouho, protože vzorec kontroluje více než 1 milion buněk.

  • A5: =SUMA(KDYŽ(B1:DD1048576=0;1;0))

    Když tento vzorec zadáte do buňky A5, může se zobrazit jedna z následujících chybových zpráv:

    Při pokusu o výpočet jednoho nebo více vzorců excelu došly prostředky. V důsledku toho tyto vzorce nelze vyhodnotit.

    Pokud chcete určit jedinečné číslo přidružené k přijaté zprávě, stiskněte kombinaci kláves CTRL + SHIFT + I. V pravém dolním rohu této zprávy se zobrazí následující číslo:

    101758

    V tomto případě je velikost pole listu příliš velká pro dostupnou paměť. Proto vzorec nelze vypočítat.

    Kromě toho se může zdát, že Excel na několik minut přestane reagovat. Je to proto, že ostatní vzorce, které jste zadali, musí přepočítat výsledky.

    Po přepočtu výsledků excel odpoví podle očekávání. Vzorec v buňce A5 vrátí hodnotu 0 (nula).

Excel 2003 a starší verze Excelu

  • A1: =SUMA(KDYŽ(B1:B65535=0;1;0))

    Vzorec v buňce A1 vrátí výsledek 65535. Tento výsledek je správný.

  • A2: =SUMA(KDYŽ(B:B=0;1;0))

    Vzorec v buňce A2 vrátí #NUM! protože maticový vzorec odkazuje na celý sloupec buněk.

  • A3: =SUMA(KDYŽ(B1:J65535=0;1;0))

    Vzorec v buňce A3 vrátí výsledek 589815. Tento výsledek je správný.

    Poznámka

    Výpočet výsledku vzorce může trvat dlouho, protože vzorec kontroluje téměř 600 000 buněk.

  • A4: =SUMA(KDYŽ(B:J=0;1;0))

    Podobně jako vzorec v buňce A2 vrátí vzorec v buňce A4 #NUM! protože maticový vzorec odkazuje na celý sloupec buněk.

  • A5: =SUMA(KDYŽ(B1:DD65535=0;1;0))

    Když zadáte vzorec do buňky A5, může se zobrazit jedna z následujících chybových zpráv:

    Nedostatek paměti. Chcete pokračovat bez vrácení zpět?

    Nedostatek paměti.

    V tomto případě je velikost pole listu příliš velká pro dostupnou paměť. Proto vzorec nelze vypočítat.

    Kromě toho se může zdát, že Excel na několik minut přestane reagovat. Je to proto, že ostatní vzorce, které jste zadali, musí přepočítat výsledky.

    Po přepočtu výsledků excel odpoví podle očekávání. Vzorec v buňce A5 vrátí hodnotu 0 (nula).

Všimněte si, že žádný z těchto vzorců nefunguje ve starších verzích Excelu. Je to proto, že pole listů vytvořená pomocí vzorců jsou větší než maximální limity v dřívějších verzích aplikace Excel. Následuje seznam některých funkcí v Excelu, které používají pole:

  • LINREGRESE()
  • MDETERM()
  • MINVERSE()
  • MMULT()
  • SUMA(KDYŽ())
  • SUMPRODUCT()
  • TRANSPOZICE()
  • TREND()

Poznámka

Následující fakta o funkcích je užitečné si zapamatovat.

  • Pokud jsou některé buňky v matici prázdné nebo obsahují text, vrátí funkce MINVERSE chybovou hodnotu #VALUE! .
  • Funkce MINVERSE také vrátí chybovou hodnotu #VALUE! , pokud matice nemá stejný počet řádků a sloupců.
  • Funkce MINVERSE vrátí chybu #VALUE! , pokud vrácené pole překročí 52 sloupců o 52 řádků.
  • Pokud výstup překročí 5460 buněk, vrátí funkce MMULT #VALUE! .
  • Funkce MDETERM vrátí #VALUE! , pokud je vrácená matice větší než 73 řádků a 73 sloupců.