Błąd VBA 1004

Błąd VBA 1004 to błąd w czasie wykonywania w VBA, który jest również znany jako błąd zdefiniowany przez aplikację lub zdefiniowany przez obiekt i dlaczego jest tak, ponieważ mamy ograniczoną liczbę kolumn w programie Excel i kiedy nasz kod wydaje polecenie wyjścia poza zakres, otrzymujemy 1004 błąd, są inne sytuacje, w których otrzymujemy ten błąd, gdy odnosimy się do zakresu, którego nie ma w arkuszu.

Błąd VBA 1004 w programie Excel

Błąd VBA 1004 to błąd czasu wykonywania w języku VBA, który pojawia się podczas wykonywania kodu. Błędy są nieodłączną częścią kodowania, zwłaszcza gdy piszesz po raz pierwszy, możesz napotkać wiele błędów w języku VBA. To jest wspólne dla wszystkich i nie ma z tym nic wielkiego.

Jednak znajomość błędu, dlaczego nadchodzi, pozwala uniknąć tych błędów w nadchodzącej przyszłości.

W tym artykule omówimy jeden z ważnych błędów programu Excel „Błąd VBA 1004”.

6 najpopularniejszych błędów uruchomieniowych programu Excel VBA 1004

Możesz pobrać ten szablon błędu VBA 1004 tutaj - Szablon błędu VBA 1004

# 1 - Błąd czasu wykonywania VBA 1004: ta nazwa jest już zajęta. Wypróbuj inny:

Ten błąd występuje podczas zmiany nazwy arkusza.

Jeśli nazwa arkusza już istnieje i jeśli spróbujesz przypisać tę samą nazwę do innego arkusza, VBA zgłasza błąd czasu wykonania 1004 z informacją „Nazwa jest już zajęta. Spróbuj innego ”

Na przykład spójrz na poniższy kod.

Kod:

 Sub Error1004_Example () Worksheets ("Sheet2"). Name = "Sheet1" End Sub 

Próbuję zmienić nazwę arkusza 2 na arkusz 1. Ale mam już arkusz o nazwie „Arkusz1”.

Jeśli uruchomię ten kod za pomocą klawisza F5 lub ręcznie, otrzymam błąd czasu wykonania 1004: ta nazwa jest już zajęta. Wypróbuj inny

Spróbuj więc odpowiednio zmienić nazwę arkusza.

# 2 - Błąd czasu wykonania VBA 1004: Metoda „Zakres” obiektu „_ Global” nie powiodła się:

Zwykle dzieje się tak, gdy próbujemy uzyskać dostęp do nazwanego zakresu w programie Excel z błędem w pisowni lub w ogóle nie istnieje w arkuszu, do którego się odnosisz.

W tym celu nazwałem zakres komórek jako „Nagłówki”, jak pokazano na poniższym obrazku.

Teraz, używając obiektu Range, mogę uzyskać dostęp do tego zakresu.

Kod:

 Sub Error1004_Example () Range ("Headings"). Wybierz End Sub 

Jeśli uruchomisz ten kod, naciskając klawisz F5, ten kod wybierze nazwany zakres.

Ale jeśli błędnie podam nazwany zakres, otrzymam Run Time Error 1004: Metoda „Range” obiektu „_ Global” nie powiodła się

Kod:

 Sub Error1004_Example () Range („Headngs”). Wybierz End Sub 

Uruchom ten kod ręcznie lub za pomocą klawisza F5 i zobacz wynik.

# 3 - Błąd czasu wykonania VBA 1004: Błąd wyboru metody klasy Range:

Zwykle dzieje się tak, gdy próbujemy wybrać komórki innego arkusza niż aktywny bez wybierania lub aktywowania arkusza.

Na przykład spójrz na poniższy kod.

Kod:

 Sub Error1004_Example () Worksheets ("Sheet1"). Range ("A1: A5"). Wybierz End Sub 

Powyższy kod mówi, aby zaznaczyć komórki od A1 do A5 w arkuszu „Arkusz1”. Aby eksperymentować, mój obecny aktywny arkusz to „Arkusz2”, a nie „Arkusz1”.

Uruchomię ten kod za pomocą klawisza F5 lub ręcznie, aby zobaczyć, co się stanie.

Otrzymaliśmy Run Time Error 1004: Select Method of Range class failed. Dzieje się tak, ponieważ bez aktywowania arkusza staramy się zaznaczyć komórki tego arkusza. Więc najpierw musimy aktywować prześwit, zanim wybierzemy komórki. Poniżej znajduje się poprawny kod.

# 4 - Błąd środowiska uruchomieniowego VBA 1004 metoda otwierania skoroszytów obiektów nie powiodła się:

Zwykle dzieje się tak, gdy próbujesz otworzyć skoroszyt, który ma taką samą nazwę jak inny skoroszyt, który jest już otwarty.

Na przykład spójrz na poniższy kod.

Kod:

 Sub Error1004_Example () Dim wb As Workbook Set wb = Workbooks.Open ("\\ FileName.xls", ReadOnly: = True, CorruptLoad: = xlExtractData) End Sub 

Spowoduje to wyświetlenie poniższego błędu.

# 5 - VBA Runtime Error 1004 metoda Niestety nie mogliśmy znaleźć:

Ten błąd występuje, ponieważ podczas próby otwarcia pliku, którego nie ma we wspomnianej ścieżce, można go przenieść, zmienić jego nazwę lub usunąć ze wspomnianej ścieżki. Jedną z przyczyn tego jest niewłaściwy typ ścieżki lub nazwy pliku z rozszerzeniem programu Excel.

Spójrz teraz na poniższy kod.

Kod:

 Sub Error1004_Example () Workbooks.Open Filename: = "E: \ Excel Files \ Infographics \ ABC.xlsx" End Sub 

This code says to open the file “ABC.xlsx” in the mentioned folder path.

For sure I know there is no file in the mentioned folder path. When there is no file exists in the mentioned folder we will get Runtime Error 1004 method Sorry We couldn’t Find.

#6 – VBA Runtime Error 1004 Activate method range class failed:

This error occurs mainly due to activating the range of cells without activating the worksheet.

For an example look at the below code.

Code:

 Sub Error1004_Example() Worksheets("Sheet1").Range("A1:A5").Activate End Sub 

This error is very similar to the one we have seen in Run Time Error 1004: Select Method of Range class failed.

If I run manually or using the F5 key then we will get below error.

Because without activating the sheet we cannot activate the cells in it. So first activate the sheet and then activate the cells of that sheet.