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.

EXCEL VBA - Ukrywanie formuł błąd

michu14031 04 Maj 2017 20:34 765 8
  • #1 04 Maj 2017 20:34
    michu14031
    Poziom 13  

    Witam,

    chciał bym poukrywać formuły w arkuszu, skoroszycie. Problem tkwi w tym, iż po wybraniu formatowania i zaznaczeniu ukryj oraz ochronie arkusza, podczas sortowania za pomocą przycisku i kodu vba wywala błąd, ażeby NIe chronić arkusza.

    ktoś coś ??

    0 8
  • #2 04 Maj 2017 20:53
    lesławek
    Poziom 31  

    Strasznie chaotyczne to co napisałeś, ale proponowałbym wyłączyć ochronę programowo zrobić co trzeba, a potem ponownie włączyć(z poziomu VBA)

    0
  • #3 04 Maj 2017 21:23
    michu14031
    Poziom 13  

    Chodzi mi o to że z pliku korzystają inni i cały czas, grzebią w funkcjach ( edytują, usuwają ), a co za tym idzie powstają błędy w danych.
    A ja nie mam czasu sprawdzać i poprawiać formuły, po kimś kto nie / umyślnie przyczynia się do tego.

    Kiedy nie miałem filtrowania poprzez przycisk z makrem vba ukrywanie oraz chronienie komórki pomagało, lecz kiedy ma m filtrowanie z przycisku, to VBA wyrzuca błąd iż arkusz jest chroniony

    0
  • Pomocny post
    #4 04 Maj 2017 23:46
    lanzul
    Poziom 26  

    michu14031 napisał:
    ... Kiedy nie miałem filtrowania poprzez przycisk z makrem vba ukrywanie oraz chronienie komórki pomagało, lecz kiedy ma m filtrowanie z przycisku, to VBA wyrzuca błąd iż arkusz jest chroniony

    A czy w kodzie vba jest gdzieś taka linia (?):
    Kod: vbscript
    Zaloguj się, aby zobaczyć kod

    Tam gdzie jest True, to po zablokowaniu arkusza dana czynność jest dozwolona.
    Tam gdzie jest False, jest ona zabroniona.

    michu14031 napisał:
    ... z pliku korzystają inni i cały czas, grzebią w funkcjach ( edytują, usuwają ), ... ja nie mam czasu sprawdzać i poprawiać formuły, po kimś ...

    :-) ... ale leniwa ta dzisiejsza młodzież ... :-)

    Jeśli to co powyżej jest "niewykonalne" z jakichś względów to można sobie 'ustawić' odnawianie formuł z poziomu kodu vba ... i wtedy użytkownicy mogą sobie wszystkie wzory usuwać tyle razy dziennie ile chcą ... :-)

    Przykład 'odnowy' formuł z automatu przy otwieraniu zeszytu i w arkuszu w dowolnej chwili:
    Zeszyt..zip Download (11.71 kB)Punkty: 0.5 dla użytkownika

    0
  • #5 05 Maj 2017 09:55
    michu14031
    Poziom 13  

    Kolego, nie nie miałem nigdzie w kodzie takiej lini, dziękuje za przykład z formułą :)
    Dodano po 2 [godziny] 47 [minuty]:
    Kolego wstawiłem kod pozmieniałem wszędzie wartość na TRUE i wyrzuca mi nadal błąd

    " Nie można użyć tego polecenia w chronionym arkuszu, Aby użyć tego polecenia, należy najpierw usunąć ochronę arkusza .... "

    dodatkowo wskazuje na


    ActiveSheet.Range("$D$1:$E$20001").AutoFilter Field:=2, Criteria1:="<>"

    0
  • #6 05 Maj 2017 11:30
    lesławek
    Poziom 31  

    Zamieść ten arkusz, bo nikt nie zgadnie co ty tam robisz...

    0
  • #7 05 Maj 2017 14:52
    lanzul
    Poziom 26  

    lesławek napisał:
    Zamieść ten arkusz, bo nikt nie zgadnie co ty tam robisz...

    Kolega 'lesławek' ma słuszny pogląd na tę sprawę ... :)

    michu14031 napisał:
    ...wstawiłem kod pozmieniałem wszędzie wartość na TRUE i wyrzuca mi nadal błąd
    " Nie można użyć tego polecenia w chronionym arkuszu, Aby użyć tego polecenia, należy najpierw usunąć ochronę arkusza .... "
    dodatkowo wskazuje na

    ActiveSheet.Range("$D$1:$E$20001").AutoFilter Field:=2, Criteria1:="<>"

    Owa linia mówi nam, że w aktywnym arkuszu należy wyfiltrować tabelę znajdującą się w zakresie 'D1:E20001' po niepustych komórkach z kolumny nr 2, czyli z 'E'
    A dlaczego tego nie robi (?) ... :|

    Jeśli kolega nie chce zamieszczać przykładu, to trzeba w kodzie, który to 'coś' robi, gdzieś na początku, wstawić sobie punkt przerwania, np: wpisując komendę 'Stop' i używając 'F8' prześledzić linijka po linijce, które z poleceń kodu vba pokazuje nam "że ma nas gdzieś" ... :D.
    EXCEL VBA - Ukrywanie formuł błądChroń arku...e 0001.jpg Download (18.74 kB)

    Należy również prześledzić procedurę wcześniejszą, która ewentualnie wywołuje tę z filtracją ... inaczej to tak na sucho się nie dojdzie o co biega ... :| ... polecenie jest na tyle proste i nieskomplikowane, że w połączeniu z odpowiednim poziomem ochrony arkusza nie powinno sprawiać kłopotów ... :| ... a jednak ...

    może złym hasłem jest odblokowywany arkusz ?

    0
  • #8 05 Maj 2017 15:53
    lesławek
    Poziom 31  

    Przy VBA zamieszczenie arkusza powinno być wpisane do regulaminu...

    0
  • #9 05 Maj 2017 23:20
    lanzul
    Poziom 26  

    lesławek napisał:
    Przy VBA zamieszczenie arkusza powinno być wpisane do regulaminu...

    :D ... ale chyba nie zawsze każdy by mógł ... część "tych" spraw to zapewne 'służbówki' i dany forumowicz może się czuć 'skrępowany' ujawnianiem 'tajemnic służbowych' ... :D
    W każdym bądź razie, jakby na to nie patrzeć, jakiś przykład powinien być załączony, inaczej to 'kombinatoryka' wyższego rzędu wtajemniczenia.

    0