Chyba VBA 1004 (6 nejlepších typů) | Jak opravit runtime chybu 1004 ve VBA?

Chyba VBA 1004 je runtime chyba ve VBA, která je také známá jako chyba definovaná aplikací nebo objektem a proč je to proto, že máme omezený počet sloupců v aplikaci Excel a když náš kód dává příkaz jít mimo rozsah, dostaneme 1004 Chyba, existují další situace, kdy se nám tato chyba zobrazí, když odkazujeme na rozsah, který v listu neexistuje.

Chyba VBA 1004 v aplikaci Excel

Chyba VBA 1004 je chyba běhu ve VBA a objevuje se při spuštění kódu. Chyby jsou nedílnou součástí kódování, zvláště když píšete poprvé, můžete narazit na mnoho chyb ve VBA. To je společné pro všechny a není o tom nic velkého.

Znát chybu, proč to přijde, vám však pomůže vyhnout se těmto chybám v nadcházející budoucnosti.

V tomto článku probereme jednu z důležitých chyb Excel „Chyba VBA 1004“.

Nejlepších 6 běhových chyb aplikace Excel VBA 1004

Tuto šablonu chyby VBA 1004 si můžete stáhnout zde - Šablona chyb VBA 1004

# 1 - Chyba běhu VBA 1004: Tento název je již obsazen. Zkuste jiný:

K této chybě dochází při přejmenování listu.

Pokud název listu již existuje a pokud se pokusíte přiřadit stejný název jinému listu, VBA vyvolá Run Time Error 1004 s hlášením „The Name is Already Taken. Zkuste jiný “

Podívejte se například na níže uvedený kód.

Kód:

 Chyba dílčího listu 1004_Example () ("List2"). Název = "List1" Konec Sub 

Pokouším se přejmenovat list 2 na list 1. Ale už mám list s názvem „List1“.

Pokud spustím tento kód pomocí klávesy F5 nebo ručně, zobrazí se chyba 1004 Run Time: Tento název je již převzat. Zkuste jiný

Zkuste tedy list odpovídajícím způsobem přejmenovat.

# 2 - Chyba běhu VBA 1004: Metoda „Range“ objektu „_ Global“ selhala:

K tomu obvykle dochází, když se pokoušíme získat přístup k pojmenovanému rozsahu v aplikaci Excel s pravopisnou chybou nebo že v listu, na který odkazujete, vůbec neexistuje.

Z tohoto důvodu jsem pojmenoval rozsah buněk jako „Nadpisy“, jak je znázorněno na následujícím obrázku.

Nyní pomocí objektu Range mohu získat přístup k tomuto rozsahu.

Kód:

 Chyba dílčího rozsahu 1004_Example () ("Nadpisy"). Vyberte koncový díl 

Pokud tento kód spustíte stisknutím klávesy F5, tento kód vybere pojmenovaný rozsah.

Pokud ale chybně zmíním pojmenovaný rozsah, zobrazí se chyba 1004 Run Time: Metoda „Range“ objektu „_ Global“ selhala

Kód:

 Chyba chyby 1004_Example () ("Headngs"). Vyberte End Sub 

Spusťte tento kód ručně nebo pomocí klávesy F5 a podívejte se na výsledek.

# 3 - VBA Run Time Error 1004: Select Method of Range class failed:

K tomu obvykle dochází, když se pokoušíme vybrat buňky jiného než aktivního listu, aniž bychom list vybrali nebo aktivovali.

Například se podívejte na níže uvedený kód.

Kód:

 Chyba dílčího listu 1004_Example () ("List1"). Rozsah ("A1: A5"). Vyberte End Sub 

Výše uvedený kód říká, že je třeba vybrat buňky A1 až A5 v listu „List1“. Experimentovat s mým současným aktivním listem je „List2“, nikoli „List1“.

Spustím tento kód pomocí klávesy F5 nebo ručně, abych zjistil, co se stane.

Chyba běhu 1004: Selhala třída Select Method of Range. To proto, že bez aktivace listu se pokusíme vybrat buňky tohoto listu. Nejprve tedy musíme aktivovat průsvitku, než vybereme buňky. Níže je uveden správný kód.

# 4 - VBA Runtime Chyba 1004 metoda otevření sešitů objektů selhala:

K tomu obvykle dochází, když se pokusíte otevřít sešit, který má stejný název jako jiný sešit, který je již otevřen.

Například se podívejte na níže uvedený kód.

Kód:

 Chyba chyby 1004_Example () Dim wb jako sada sešitu wb = Workbooks.Open ("\\ FileName.xls", ReadOnly: = True, CorruptLoad: = xlExtractData) End Sub 

To způsobí následující chybu.

# 5 - VBA Runtime Chyba 1004 metoda Omlouváme se, nenašli jsme:

K této chybě dochází, protože když se pokusíte otevřít soubor, který ve zmíněné cestě neexistuje, může být přesunut, přejmenován nebo odstraněn ze zmíněné cesty. Jedním z důvodů je to kvůli nesprávnému typu cesty nebo názvu souboru s příponou Excel.

Nyní se podívejte na níže uvedený kód.

Kód:

 Dílčí chyba 1004_Example () Workbooks.Open Filename: = "E: \ Excel Files \ Infographics \ ABC.xlsx" End Sub 

Tento kód říká, že v uvedené cestě ke složce otevřete soubor „ABC.xlsx“.

Určitě vím, že ve zmíněné cestě ke složce není žádný soubor. Pokud ve zmíněné složce neexistuje žádný soubor, dostaneme metodu Runtime Error 1004 Sorry We could find.

# 6 - Chyba běhu VBA 1004 Třída rozsahu aktivace metody selhala:

K této chybě dochází hlavně kvůli aktivaci rozsahu buněk bez aktivace listu.

Například se podívejte na níže uvedený kód.

Kód:

 Chyba dílčího listu 1004_Example () ("List1"). Rozsah ("A1: A5"). Aktivovat koncový díl 

Tato chyba je velmi podobná té, kterou jsme viděli v Chyba běhu 1004: Selhání metody Select Method of Range.

Pokud spustím ručně nebo pomocí klávesy F5, dostaneme se pod chybou.

Protože bez aktivace listu nemůžeme aktivovat buňky v něm. Nejprve tedy aktivujte list a poté aktivujte buňky tohoto listu.