Spis treści
Excel VBA jest potężnym i poręcznym narzędziem do wykonywania zadań dość szybko w ilości hurtowej. Możesz zastosować kilka warunków i uzyskać różne wyniki na podstawie poszczególnych warunków za pomocą VBA. Teraz, czasami, możesz chcieć sprawdzić, czy dany arkusz istnieje w twoim skoroszycie. A jeśli nie, możesz potrzebować utworzyć ten arkusz. W tym artykule pokażę ci wszystkie kroki, aby dodać arkusz jeśli nie istnieje, używając Excel VBA.
Excel VBA: Dodaj arkusz, jeśli nie istnieje (szybki podgląd)
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Which Sheet Are You Looking For?", _ "Add Sheet If Not Exist", "Sheet5", , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "Arkusz '' & addSheetName & _ "' ma.został dodany, ponieważ nie istniał", _ vbInformation, "Add Sheet If Not Exist" Else MsgBox "The ''" & addSheetName & _ "''sheet already exists in this workbook.", _ vbInformation, "Add Sheet If Not Exist" End If End Sub
Wstaw do nowego modułu, aby zastosować powyższy kod.
Pobierz Zeszyt ćwiczeń
Nasz zeszyt ćwiczeń możesz pobrać stąd za darmo!
Dodaj arkusz, jeśli nie istnieje.xlsmKroki do zastosowania kodu VBA do dodania arkusza w Excelu, jeśli on nie istnieje
Powiedzmy, że masz skoroszyt zawierający 4 arkusze o nazwach styczeń, luty, marzec i kwiecień. Każdy arkusz zawiera raport sprzedaży z następnego miesiąca. Teraz musisz znaleźć niektóre arkusze w skoroszycie i dodać arkusz, jeśli nie istnieje. Możesz postępować zgodnie z poniższymi wskazówkami krok po kroku, aby to osiągnąć.
📌 Krok 1: Wstaw nowy moduł
Najpierw trzeba wstawić moduł do pisania kodu VBA.
- Aby to zrobić, na samym początku przejdź do Deweloper tab>> Visual Basic narzędzie.
- W związku z tym Microsoft Visual Basic for Applications pojawi się okno.
- Następnie należy przejść do Wkładka tab>> Moduł narzędzie.
Tak więc, nowy moduł o nazwie Moduł1 został utworzony.
Read More: Jak dodać arkusz z nazwą w Excelu VBA (6 prostych sposobów)
Podobne lektury
- Tworzenie nowego skoroszytu i zapisywanie przy użyciu VBA w Excelu
- Excel VBA: Tworzenie nowego skoroszytu i nadawanie mu nazwy (6 przykładów)
- Jak utworzyć nowy arkusz z szablonu za pomocą makra w Excelu
📌 Krok 2: Napisz i zapisz wymagany kod VBA
Teraz trzeba napisać kod wewnątrz modułu i zapisać go.
- W tym celu należy kliknąć na Moduł1 i napisz w oknie kodu następujący kod.
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Which Sheet Are You Looking For?", _ "Add Sheet If Not Exist", "Sheet5", , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "Arkusz '' & addSheetName & _ "' ma.został dodany, ponieważ nie istniał", _ vbInformation, "Add Sheet If Not Exist" Else MsgBox "The ''" & addSheetName & _ "''sheet already exists in this workbook.", _ vbInformation, "Add Sheet If Not Exist" End If End
Sub
- W efekcie okno kodu będzie wyglądało jak poniżej.
🔎 Kod Wyjaśnienie:
♣ Segment 1:
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String
W tej części zadeklarowaliśmy nazwę makra i nazwy zmiennych.
♣ Segment 2:
addSheetName = Application.InputBox("Which Sheet Are You Looking For?", _ "Add Sheet If Not Exist", "Sheet5", , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name
W tej części utworzyliśmy pole wejściowe, przez które możemy wprowadzić nazwę pliku, który chcemy znaleźć.
♣ Segment 3:
If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "The ''" & addSheetName & _ "' sheet has been added as it did not exist.", _ vbInformation, "Add Sheet If Not Exist"
W tej części sprawdzamy, czy wymagany arkusz istnieje w skoroszycie. Jeśli nie, to utworzy wymagany arkusz i pokaże nam komunikat o tej zmianie.
♣ Segment 4:
Else MsgBox "The ''" & addSheetName & _ "''sheet already exists in this workbook.", _ vbInformation, "Add Sheet If Not Exist" End If End Sub
W tej części pracowaliśmy z wynikiem, jeśli wymagany arkusz już istnieje w skoroszycie. W tym scenariuszu pojawi się kolejne okno komunikatu informujące, że ten arkusz istnieje. Ponadto w tej części poprawnie kończymy kod.
- Następnie należy nacisnąć Ctrl + S.
- Następnie Microsoft Excel Pojawi się okno, w którym należy kliknąć na Nie przycisk.
- W związku z tym Zapisz jako pojawi się okno.
- Następnie należy wybrać Zapisz jako typ: opcja jako .xlsm Następnie należy kliknąć na Zapisz przycisk.
W ten sposób napisałeś i zapisałeś swój wymagany kod.
Uwaga:
Musisz zapisać skoroszyt programu Excel w .xlsm W przeciwnym razie makro nie zostanie włączone i kod nie będzie działał.
Read More: Excel VBA, aby dodać arkusz z nazwą zmiennej (5 idealnych przykładów)
📌 Krok 3: Uruchomienie kodu
Teraz trzeba uruchomić kod i sprawdzić wyniki.
- Aby to zrobić, należy przede wszystkim kliknąć na Uruchom ikona w Microsoft Visual Basic for Applications okno.
- W związku z tym Makra pojawi się okno.
- Następnie należy wybrać AddSheetIfNotExist makro i kliknij na Uruchom przycisk.
- W tym czasie nasze stworzone okienko komunikacyjne o nazwie Dodaj arkusz, jeśli nie istnieje Pojawi się opcja auto. Tutaj opcją automatyczną będzie Arkusz5 .
- Teraz, dla sprawdzenia, napisz "Kwiecień" w polu tekstowym i kliknij na Ok przycisk.
- Następnie zobaczyłbyś, że pojawi się kolejne okno komunikatu informujące, że arkusz już istnieje.
- Kliknij na Ok przycisk.
- Następnie uruchom ponownie kod i napisz "maj" w polu tekstowym utworzonej skrzynki wiadomości. Następnie kliknij na OK przycisk.
- W rezultacie pojawi się kolejne okno z komunikatem informującym, że "maj" arkusz nie istniał i dlatego stworzył ten arkusz.
- Następnie należy kliknąć na OK przycisk.
Wreszcie widać, że dodałeś arkusz, który wcześniej nie istniał. A skoroszyt wyglądałby teraz tak.
Read More: Excel VBA: Dodaj arkusz po ostatnim (3 idealne przykłady)
Wniosek
Tak więc, w tym artykule, pokazałem wszystkie kroki, aby dodać arkusz, jeśli nie istnieje z Excel VBA. Przejdź przez cały artykuł dokładnie zrozumieć go lepiej i osiągnąć swój pożądany wynik. Mam nadzieję, że znajdziesz ten artykuł pomocne i pouczające. Jeśli masz jakieś dalsze pytania lub zalecenia, proszę o kontakt.
I, odwiedź ExcelWIKI na wiele więcej takich artykułów, dziękuję!