Jak rozwiązać błąd VBA „Wykryto niejednoznaczną nazwę”?

Anonim

Podczas pracy z VBA po uruchomieniu procedury może pojawić się wyskakujące okienko błędu. Ten błąd mówi „Wykryto niejednoznaczną nazwę: nazwa proceduryW tym artykule dowiemy się, dlaczego występuje ten błąd i jak możemy go rozwiązać.

Dlaczego ten błąd?

Jak mówi wyskakujące okienko, silnik VBA wykrył jedną lub więcej procedur o tej samej nazwie w tym samym module. Doprowadziło to do zamieszania w silniku VBA. Stąd VBA zgłasza błąd.

Jak rozwiązać ten problem?

To jest łatwe. Nie ma dwóch takich samych procedur o tej samej nazwie w jednym module. Zmień nazwę procedury, usuń ją lub przenieś do innego modułu.

Ten błąd zwykle pojawia się podczas pracy z wydarzenia w Excelu.

Załóżmy, że pracujesz nad arkuszem 1 ze zdarzeniami arkusza roboczego. Teraz chcesz wywołać wiadomość, gdy tylko użytkownik zmieni wybór komórki. W takim przypadku użyjesz zdarzenia Worksheet_SelectionChange().

Teraz znowu chcesz zadać użytkownikom kilka pytań, gdy użytkownik zmienia wybór komórek. Wtedy będziesz musiał użyć tego samego wydarzenia. Teraz napisałeś dwie procedury obsługi zdarzeń dla różnych zadań.

Private Sub Worksheet_SelectionChange(ByVal Target As Range) MsgBox "Cześć" End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.InputBox ("kim jesteś?") End Sub 

Teraz, gdy zmienisz zaznaczenie na arkuszu, to właśnie otrzymasz.

Teraz, gdy zmienisz zaznaczenie na arkuszu, to właśnie otrzymasz.

Widzisz, chodzi o to, że Excel na to nie pozwala. Nie możesz mieć dwóch lub więcej takich samych nazw funkcji w module. Nawet w Wydarzeniach. Prowadzi to do niejednoznaczności.

Teraz, jeśli chcesz wykonać inne zadanie na tym samym zdarzeniu, musisz umieścić ten kod w tej samej procedurze jednego zdarzenia. Użyj warunków do kontrolowania zdarzeń.

Poniższe wydarzenie będzie działać idealnie. Gdy użytkownik zmieni zaznaczenie komórek w arkuszu1, pojawi się komunikat „cześć”, a następnie zada użytkownikowi pytanie z polem wprowadzania.

Private Sub Worksheet_SelectionChange(ByVal Target As Range) MsgBox "Cześć" Application.InputBox ("kim jesteś?") End Sub 

Teraz, gdy niejednoznaczność zniknęła, zdarzenie będzie działać doskonale i nie otrzymasz ponownie błędu niejednoznaczna nazwa wykrytego błędu.

Więc tak, w ten sposób można rozwiązać błąd niejednoznaczności w Excel VBA. Mam nadzieję, że to było pomocne. Jeśli masz jakiekolwiek wątpliwości dotyczące tego artykułu lub jakiegokolwiek innego artykułu, zapytaj mnie w sekcji komentarzy poniżej.

Odniesienie nie jest prawidłowym błędem programu Excel i jak go rozwiązać? : Ten błąd występuje, gdy odwołujemy się do obiektu lub lokalizacji, która nie istnieje lub uległa zmianie. Aby rozwiązać ten problem, wyszukujemy referencję.

Wydarzenia w Excel VBA | W programie Excel istnieje siedem typów zdarzeń. Każde wydarzenie dotyczy innego zakresu. Zdarzenie aplikacji dotyczy poziomu skoroszytu. Skoroszyt na poziomie arkusza. Zdarzenie arkusza roboczego na poziomie zakresu.

Zdarzenia arkusza roboczego w Excel VBA |Zdarzenia w arkuszu są naprawdę przydatne, gdy chcesz, aby makra były uruchamiane po wystąpieniu określonego zdarzenia w arkuszu.

Zdarzenia ze skoroszytu przy użyciu VBA w programie Microsoft Excel | Zdarzenia skoroszytu działają na całym skoroszycie. Ponieważ wszystkie arkusze są częścią skoroszytu, te zdarzenia również na nich działają.

Zapobiegaj wykonywaniu automatycznego makra / makra zdarzenia za pomocą VBA w programie Microsoft Excel | Aby zapobiec uruchomieniu makra auto_open użyj klawisza Shift.

Zdarzenia obiektów wykresu przy użyciu VBA w programie Microsoft Excel | Wykresy są złożonymi obiektami i dołączasz do nich kilka komponentów. Do tworzenia zdarzeń wykresu używamy modułu Class.

Popularne artykuły:

50 skrótów Excela, które zwiększą Twoją produktywność | Przyspiesz swoje zadanie. Te 50 skrótów przyspieszy pracę w programie Excel.

Funkcja WYSZUKAJ.PIONOWO w programie Excel | Jest to jedna z najczęściej używanych i popularnych funkcji programu Excel, która służy do wyszukiwania wartości z różnych zakresów i arkuszy.

LICZ.JEŻELI w Excelu 2016 | Policz wartości z warunkami za pomocą tej niesamowitej funkcji. Nie musisz filtrować danych, aby policzyć konkretną wartość. Funkcja Countif jest niezbędna do przygotowania deski rozdzielczej.

Jak korzystać z funkcji SUMIF w programie Excel? | To kolejna ważna funkcja deski rozdzielczej. Pomaga to zsumować wartości w określonych warunkach.