Błąd VBA 1004 (6 najpopularniejszych typów) - Jak naprawić Runtime Error 1004 w VBA?

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 w tym nic wielkiego.

Jednak znajomość błędu, dlaczego to 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

# 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 o wartości 1004, stwierdzając „Nazwa jest już zajęta. Wypróbuj inny ”.

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ę odwołujesz.

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 inne niż aktywny arkusz 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 poeksperymentować, 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ć czystość, zanim wybierzemy komórki. Poniżej znajduje się poprawny kod.

# 4 - Błąd środowiska wykonawczego 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 method Niestety nie mogliśmy znaleźć:

Ten błąd występuje z powodu próby otwarcia pliku, którego nie ma we wspomnianej ścieżce. Można to przenieść, zmienić 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

Ten kod mówi, aby otworzyć plik „ABC.xlsx” we wspomnianej ścieżce folderu.

Na pewno wiem, że w podanej ścieżce do folderu nie ma żadnego pliku. Gdy we wspomnianym folderze nie ma żadnego pliku, otrzymamy metodę Runtime Error 1004. Przepraszamy, nie mogliśmy go znaleźć.

# 6 - Błąd wykonania VBA 1004 Nie udało się aktywować klasy zakresu metod:

Ten błąd występuje głównie z powodu aktywacji zakresu komórek bez aktywowania arkusza.

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

Kod:

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

Ten błąd jest bardzo podobny do tego, który widzieliśmy w Run Time Error 1004: Select Method of Range class failed.

Jeśli uruchomię ręcznie lub za pomocą klawisza F5, otrzymamy poniższy błąd.

Ponieważ bez aktywacji arkusza nie możemy aktywować znajdujących się w nim komórek. Więc najpierw aktywuj arkusz, a następnie aktywuj komórki tego arkusza.

Interesujące artykuły...