fbpx

Nazwa arkusza wyświetlana w komórce za pomocą formuły

15.05.2014 | Triki

Ostatnio potrzebowałam wyświetlić w komórce nazwę arkusza. Chciałam to zrobić bez pisania funkcji w VBA. W tym artykule pokażę Wam co wymyśliłam.

Oto formatka:

Nazwa arkusza wyświetlana w komórce za pomocą formuły - formatka

Do wyświetlenia w komórce nazwy arkusza posłużę się funkcją KOMÓRKA(). W tym celu należy wpisać do komórki A3 następującą formułę:

=KOMÓRKA("nazwa_pliku";A1)

Formuła ta pobierze pełną ścieżkę dostępu do pliku, w którym jest wpisana, ale również pokaże nazwę arkusza, w którym znajduje się komórka A1, będąca drugim argumentem funkcji (oczywiście mogę odwołać się do dowolnej innej komórki w arkuszu, którego nazwę chcę poznać). Jeśli bym nie wpisała tego argumentu – funkcja zwróciłaby mi nazwę aktywnego arkusza. A oto wynik:

Nazwa arkusza wyświetlana w komórce za pomocą formuły - komórka

Rozumiem, że to Was nie satysfakcjonuje 😉 Mnie też nie. Na szczęście w bardzo łatwy sposób można wyciąć nazwę arkusza z wyniku powyższej formuły. Są na to dwa sposoby: łatwiejszy i trudniejszy. Oto one:

Sposób 1 – łatwiejszy
Wpisz w komórce B5 następującą formułę:

=FRAGMENT.TEKSTU(A3;SZUKAJ.TEKST("]";A3)+1;31)

Jako długość pobieranego tekstu przez funkcję FRAGMENT.TEKSTU() podałam 31, ponieważ jest to maksymalna długość, jaką może mieć nazwa arkusza. Jeśli nazwa ta będzie krótsza – i tak wyświetli się dobry wynik.

Sposób 2 – trudniejszy
Wycina tyle znaków, ile faktyczni ma nazwa arkusza. Wpisz w komórce B6 następującą formułę:

=FRAGMENT.TEKSTU(A3;SZUKAJ.TEKST("]";A3)+1;DŁ(A3)-SZUKAJ.TEKST("]";A3))

A oto wyniki obu sposobów:

Nazwa arkusza wyświetlana w komórce za pomocą formuły - wynik

Jak widać identyczne 😉

Gotowe!

Pomogłam Ci? Postaw mi wirtualną kawę! →

Przeczytaj podobne wpisy

Kategorie

15 komentarzy

  1. kiedyś było mi to potrzebne ale przyznaję, ze poległem nie zrobiwszy tego. sposób rozwiązania bardzo ciekawy.

    Reply
    • Cieszę się i mam nadzieję, że następnym razem się przyda 😉

      Reply
  2. można też uzyskać taki efekt za pomocą znajdowania i zamieniania tj. w polu znajdź *] a w polu zamień zostawiamy puste pole

    Reply
    • Super pomysł – szybki i skuteczny. Dziękuję za komentarz!

      Reply
  3. Można też obydwie formuły połączyć.
    Twój sposób 1:
    =FRAGMENT.TEKSTU(KOMÓRKA(„nazwa_pliku”;A3);SZUKAJ.TEKST(„]”;KOMÓRKA(„nazwa_pliku”;A3))+1;31)
    i drugi:
    =FRAGMENT.TEKSTU(KOMÓRKA(„nazwa_pliku”;A3);SZUKAJ.TEKST(„]”;KOMÓRKA(„nazwa_pliku”;A3))+1;DŁ(KOMÓRKA(„nazwa_pliku”;A3))-SZUKAJ.TEKST(„]”;KOMÓRKA(„nazwa_pliku”;A3)))

    Reply
    • Oczywiście, również zadziała 🙂

      Reply
  4. witam, działa świetnie. Ja mam tylko problem jak zrobiłem tą formułę w kilku arkuszach to przy odświeżaniu wszędzie jest nazwa odświeżanego ostatnio arkusza

    Reply
    • Witaj Michał,

      sprawdź proszę, czy do funkcji KOMÓRKA na pewno wpisałeś odwołanie do komórki z konkretnego arkusza? Ja tak zrobiłam (też mam kilka arkuszy, jak Ty) i „u mnie działa” 🙂 (kocham to stwierdzenie;)).

      Pozdrawiam
      Malina

      Reply
  5. Witam.
    Naprawdę świetna stronka.
    Skorzystałem już dwa razy.
    Gratulacje i dzięki 😉

    Reply
    • Super, dziękuję i bardzo się cieszę 🙂

      Reply
  6. Witam, można i tak:
    =PRAWY(KOMÓRKA(„nazwa_pliku”);DŁ(KOMÓRKA(„nazwa_pliku”))-ZNAJDŹ(„]”;KOMÓRKA(„nazwa_pliku”)))

    i ENTER 🙂

    Pozdrawiam
    Daniel

    Reply
    • Super! Dziękuję za komentarz 🙂

      Reply
  7. Czy zna Pani metodę zmiany parametrów czcionki w nazwach arkuszy (MSExcel2003-2007)?

    Reply
    • Niestety nie ;(

      Reply
  8. A można tak?

    =FRAGMENT.TEKSTU(KOMÓRKA(„nazwa_pliku”;A1);SZUKAJ.TEKST(„]”;KOMÓRKA(„nazwa_pliku”;A1))+1;31)

    Reply

Leave a Reply to MK Anuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Pin It on Pinterest