Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Udzielanie dostępu do wybranych arkuszy w Excelu

bogdanon59 14 Gru 2017 18:32 771 3
  • #1 14 Gru 2017 18:32
    bogdanon59
    Poziom 2  

    Witam. Mam napisaną aplikację w Excelu służącą do „pełnej” obsługi małego zakładu szklarskiego. Czyli pozwala na spisanie i wykazanie materiałów oraz prac wykonanych dla klienta, w oparciu o te dane – wystawienie faktury, pozwala na prowadzenie gospodarki materiałowej, archiwizuje faktury, prowadzi małą księgowość, posiada wykaz klientów i kontrahentów itd. Aplikacja składa się z kilku arkuszy współpracujących ze sobą (korzystających z danych zawartych w różnych arkuszach). Arkusze te to m.in. FIRMA – gdzie są dane dotyczące firmy – wykorzystywane potem przy wystawianiu faktury; KALKULATOR – gdzie wpisywane są kody materiałów i prac wykonanych dla klienta, obliczenie cen dla poszczególnych pozycji oraz obliczenie VATu i ceny Brutto dla klienta; MATERIAŁY – gdzie jest wykaz posiadanych materiałów, ich kody oraz ceny dla kalkulatora; FAKTURA – gotowa do wydruku forma faktury pobierająca z innych arkuszy niezbędne dane; i jeszcze inne arkusze.
    Ponieważ zakład jest mały posiadamy jeden komputer z którego korzystają pracownicy, na którym zainstalowana jest ww aplikacja.
    Po uruchomieniu aplikacji, aplikacja uruchamia się w sposób standardowy tzn. dostępne są wszystkie arkusze dla użytkownika.
    Program posiada kilka makr, które jak się przekonałem nie działają prawidłowo jeśli są odwołania do arkuszy ukrytych bądź zabezpieczonych hasłem. Stąd też chciałbym uniknąć ukrywania arkuszy.
    Chciałbym:
    1. Utworzyć arkusz o nazwie np. Admin, w którym mógłbym w kilku wierszach dla kilku pracowników w kolejnych kolumnach przydzielić Login, hasło oraz określić (np. przez podanie nazwy) do których arkuszy będzie udzielony dostęp dla użytkownika (reszta arkuszy choć widoczna nie mogłaby być otwarta po ich wybraniu).
    2. Utworzyć arkusz o nazwie Logowanie, na którym zawsze otwierałby się program po uruchomieniu (jedyny aktywny arkusz – po klikaniu na pozostałe zakładki byłoby niemożliwe ich otwarcie). Na arkuszu tym były by dwa okienka – Login, poniżej – Hasło i dwa przyciski Zaloguj oraz Wyloguj.
    3. Pracownik po wpisaniu swojego Logina, Hasła oraz naciśnięciu przycisku Zaloguj otrzymywałby dostęp tylko do tych arkuszy, które przydzielono mu w arkuszu Admin. Wizualnie mogłoby to być widoczne w taki sposób, że np. zakładki wszystkich niedostępnych arkuszy byłyby ukazane w kolorze szarym, a dostępne w kolorze białym (wyróżnikiem mogą być też np. kolory nazw arkuszy dostępnych i niedostępnych).
    4. Po zakończonej pracy pracownik powraca do arkusza Logowanie, naciska przycisk Wyloguj i w tym momencie program powraca do formy po uruchomieniu, czyli wszystkie arkusze są niedostępne.
    Czy możliwe jest stworzenie takiego usprawnienia mojej aplikacji i jak to zrobić?
    Bogdan

    0 3
  • #2 14 Gru 2017 18:58
    JacekCz
    Poziom 36  

    Opisujesz (chyba) sensowny scenariusz użytkowy, ale koszmar implementacyjny.
    Chore jest realizowanie tego w excellu, napotkane problemu już dawno powinny Ci zasugerować jakieś normalne narzędzie.
    (a już zwłaszcza wielokrotnie widziałem w excellu "archiwizowanie faktur", czyli pracownik siedział po godzinach i palcował co skasowali za dnia, ku zadowoleniu szefowej, bo to radość jak pracują w nadgodzinach i nie domagają się kasy).
    Zrobienie bezpieczeństwa w excellu? A jak sam siebie obroni?

    Moderowany przez adamas_nt:

    3.1.11. Nie wysyłaj wiadomości, które nic nie wnoszą do dyskusji. Wprowadzają w błąd, są niebezpieczne czy nie rozwiązują problemu użytkownika.
    3.1.9. Nie ironizuj i nie bądź złośliwy w stosunku do drugiej strony dyskusji. Uszanuj odmienne zdanie oraz inne opinie na forum.

    0
  • #4 08 Mar 2018 21:22
    adamas_nt
    Moderator Programowanie

    Z arkusza, nawet za pomocą łącz, można w dość łatwy sposób "wydłubać" hasła.
    W załączniku znaleziony niegdyś w Internecie skoroszyt z dodatkowo zaszyfrowanymi hasłami.

    Wskazane jest włączenie ochrony oraz zablokowanie przeglądania projektu VBA hasłem.

    1