ВБА 1004 грешка (топ 6 типова) - Како исправити грешку током извођења 1004 у ВБА?

Преглед садржаја

ВБА 1004 грешка је грешка током извођења у ВБА која је такође позната као апликационо дефинисана или објектно дефинисана грешка и зашто је то зато што имамо ограничен број колона у екцелу и када наш код даје наредбу да се изађе из домета добијамо 1004 грешка, постоје и друге ситуације када ову грешку добијемо када се позивамо на опсег који не постоји у листу.

ВБА грешка 1004 у Екцелу

ВБА 1004 Грешка је грешка времена извођења у ВБА и јавља се током покретања кода. Грешке су саставни део кодирања, посебно када пишете први пут, у ВБА можете наићи на много грешака. Ово је заједничко за све и у томе нема велике ствари.

Међутим, ако знате грешку због које долази, те грешке ћете избећи у наредној будућности.

У овом чланку ћемо размотрити једну од важних грешака у програму Екцел „ВБА 1004 Грешка“.

Топ 6 грешака у извршавању програма Екцел ВБА 1004

# 1 - ВБА Грешка времена извођења 1004: То име је већ заузето. Покушајте са другим:

Ова грешка се јавља приликом преименовања листа.

Ако име радног листа већ постоји и ако покушате исто име доделити другом листу, ВБА баца грешку времена извођења од 1004, наводећи да је „Име већ заузето. Покушајте са другим. “

На пример, погледајте доњи код.

Шифра:

Суб Еррор1004_Екампле () Ворксхеетс ("Схеет2"). Наме = "Схеет1" Енд Суб

Покушавам да преименујем лист 2 у лист 1. Али већ имам лист под називом „Лист1“.

Ако покренем овај код помоћу тастера Ф5 или ручно, добићу грешку времена извођења 1004: То име је већ заузето. Покушајте са другим.

Дакле, покушајте да преименујете лист у складу с тим.

# 2 - ВБА грешка времена извођења 1004: Метода „Опсег“ објекта „_ Глобал“ није успела:

То се обично дешава када покушамо да додамо именовани опсег у екцелу с правописном грешком или који уопште не постоји у радном листу на који се позивате.

Због тога сам опсег ћелија назвао „Наслови“, као што је приказано на доњој слици.

Сада помоћу објекта Ранге могу да приступим овом опсегу.

Шифра:

Суб Еррор1004_Екампле () Ранге ("Хеадингс"). Изаберите Енд Суб

Ако покренете овај код притиском на тастер Ф5, тада ће овај код одабрати именовани опсег.

Али ако погрешно споменем именовани опсег, добићу грешку времена извођења 1004: Метода „Опсег“ објекта „_ Глобал“ није успела.

Шифра:

Суб Еррор1004_Екампле () Ранге ("Хеаднгс"). Изаберите Енд Суб

Покрените овај код ручно или помоћу тастера Ф5 и погледајте резултат.

# 3 - ВБА Грешка времена извођења 1004: Није успео метод избора класе опсега:

То се обично дешава када покушавамо да изаберемо ћелије које нису активни лист, а да лист није изабран или активан.

На пример, погледајте доњи код.

Шифра:

Суб Еррор1004_Екампле () Ворксхеетс ("Схеет1"). Ранге ("А1: А5"). Изаберите Енд Суб

Горњи код каже да се на радном листу „Лист1“ одаберу ћелије од А1 до А5. Да бих експериментисао, мој тренутни активни лист је „Схеет2“, а не „Схеет1“.

Покренућу овај код помоћу тастера Ф5 или ручно да видим шта ће се догодити.

Добили смо грешку у времену извођења 1004: неуспех класе „Одабир методе опсега“. То је зато што без активирања листа покушавамо да изаберемо ћелије тог листа. Дакле, прво морамо да активирамо прозирну пре него што изаберемо ћелије. Испод је исправан код.

# 4 - ВБА Рунтиме Еррор 1004 метода отворене објектне радне свеске није успела:

То се обично дешава када покушате да отворите радну свеску, која је исто име као и друга радна свеска, која је већ отворена.

На пример, погледајте доњи код.

Шифра:

Суб Еррор1004_Екампле () Дим вб Као сет радне свеске вб = Воркбоокс.Опен ("\ Име датотеке.клс", РеадОнли: = Труе, ЦорруптЛоад: = клЕктрацтДата) Енд Суб

Ово ће избацити доњу грешку.

# 5 - ВБА Рунтиме Еррор 1004 метода Нажалост нисмо успели да пронађемо:

До ове грешке долази када покушате да отворите датотеку која не постоји на поменутој путањи. Ово се може преместити, преименовати или избрисати са поменуте путање. Један од разлога за то је погрешан тип путање или имена датотеке са екстензијом екцел.

Сада погледајте доњи код.

Шифра:

Суб Еррор1004_Екампле () Воркбоокс.Опен Филенаме: = "Е: Екцел Филес Инфограпхицс АБЦ.клск" Енд Суб

Овај код каже да отворите датотеку „АБЦ.клск“ у поменутој путањи до фасцикле.

Сигурно знам да у поменутој путањи до фасцикле нема датотеке. Када у поменутој фасцикли не постоји датотека, добићемо методу Рунтиме Еррор 1004. Жао нам је, нисмо успели да га пронађемо.

# 6 - ВБА рунтиме грешка 1004 Активирање класе опсега метода није успело:

Ова грешка се јавља углавном због активирања опсега ћелија без активирања радног листа.

На пример, погледајте доњи код.

Шифра:

Суб Еррор1004_Екампле () Ворксхеетс ("Схеет1"). Ранге ("А1: А5"). Активирајте Енд Суб

Ова грешка је врло слична оној коју смо видели у грешци времена извођења 1004: неуспешна метода избора класе опсега.

Ако покренем ручно или користим тастер Ф5, добићемо испод грешке.

Јер без активирања листа не можемо активирати ћелије у њему. Дакле, прво активирајте лист, а затим активирајте ћелије тог листа.

Занимљиви Чланци...