Udostępnij za pośrednictwem


Krok po kroku: zmień nazwę arkusza programu Excel na zawartość komórki przy użyciu makra

Ten artykuł został napisany przez Raddini Rahayu, Microsoft MVP.

Przypadku

Oto cotygodniowe raporty dotyczące działań sprzedażowych. Na przykład w tym przypadku jest 15 osób. Nancy, raporty administratora, jest przypisywane podsumowanie poszczególnych danych sprzedaży w jednym pliku, gdzie wszystkie sprzedaży są oddzielone w każdym arkuszu. Aby łatwo rozmieszczać dane, każdy arkusz Nancy nadał nazwę zgodną z nazwą sprzedaży w tym arkuszu. Na początku Nancy czuje się z tym komfortowo, ale ponieważ coraz więcej danych i wymaga szybkiego przetwarzania, Nancy była tak przytłoczona. Aby rozwiązać ten problem, Nancy chce, aby arkusze nazw były zmieniane automatycznie zgodnie z nazwą sprzedaży w każdym arkuszu bez ręcznej zmiany nazwy.

Zrzut ekranu przedstawiający cotygodniowe raporty dotyczące działań sprzedażowych.

Rozwiązania

Najlepszym rozwiązaniem rozwiązania problemu Nancy jest użycie makra. To makro przeznaczone dla każdego arkusza w tym pliku, niezależnie od liczby arkuszy. Nazwa każdego arkusza zmieni się zgodnie z nazwą sprzedaży określoną w tej samej lokalizacji w każdym arkuszu.

Jak wykonać

Pierwszy krok

  • Projektowanie formatów raportów i określanie lokalizacji komórki, w której zostanie umieszczona nazwa sprzedaży. W tym przypadku lokalizacja znajduje się w komórce J2. Ten format raportu powinien być taki sam w każdym arkuszu.

  • Zachowaj nazwy arkuszy w nazwie domyślnej (Arkusz1, Arkusz2, Arkusz3 itp.).

    Zrzut ekranu przedstawiający przechowywanie nazw arkuszy w nazwie domyślnej.

Ostatni krok

Krok kodowania makr

Po poznaniu lokalizacji komórki, w której zostanie umieszczona nazwa sprzedaży, teraz możemy kontynuować następny krok, kodowanie makr.

  1. Na karcie Deweloper wybierz pozycję Visual Basic w kategorii Kod lub naciśnij kombinację klawiszy Alt+F11 na klawiaturze, aby wyświetlić okno Visual Basic.

    Zrzut ekranu przedstawiający wybranie pozycji Visual Basic w kategorii Kod na karcie Deweloper.

  2. W okienku zadań projektu kliknij pozycję (Nazwa skoroszytu), a następnie w menu Wstaw wybierz pozycję Moduł i napisz następujący skrypt:

    Sub RenameSheet()
    
    Dim rs As Worksheet
    
    For Each rs In Sheets
    rs.Name = rs.Range("B5")
    Next rs
    
    End Sub
    

    Zrzut ekranu przedstawia kroki pisania skryptu w skoroszycie Sales Report.xlsx.

  3. Naciśnij klawisz F5 na klawiaturze, jeśli nie ma debugowania, zamknij okno visual basic i wróć do programu Excel. Jeśli istnieje debugowanie, sprawdź ponownie skrypt.

  4. Wróć do programu Excel i zobacz, co się stanie, jeśli kody są poprawne, teraz nazwa każdego arkusza zostanie zmieniona zgodnie z istniejącą nazwą sprzedaży w każdym arkuszu.

    Zrzut ekranu przedstawia nazwę każdego arkusza, którego nazwa została zmieniona zgodnie z istniejącą nazwą sprzedaży w każdym arkuszu.

To wszystko. Mam nadzieję, że z pożytecznym.

Zastrzeżenie dotyczące innych firm

Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie udziela żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, w odniesieniu do wydajności lub niezawodności tych produktów.