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.

VBA / excel - wykonanie skryptu, nieaktywny arkusz, arkusz ukryty

newbie92 20 Cze 2016 17:59 1506 10
  • #1 20 Cze 2016 17:59
    newbie92
    Poziom 3  

    prosiłbym o pomoc w znalezieniu błędu w kodzie, dysponuję takim oto napisanym przez siebie kodem.

    Kod: vbscript
    Zaloguj się, aby zobaczyć kod


    arkusz "licence" jest ustawiony jako "bardzo ukryty" z poziomu VBA. Napisany wyżej skrypt wykonuje się prawidłowo, ale tylko w momencie kiedy aktywny jest arkusz "licence", w peciwnym wypadku trzymuję błąd " Run-time error '1004' ".

    Co muszę zmienić aby wykonywał się niezależnie od tego który arkusz jest aktywny ?

    0 10
  • #2 20 Cze 2016 18:22
    lesławek
    Poziom 31  

    Jeśli zamieścisz arkusz to może ktoś ustali dlaczego to nie działa ale sam kod to za mało gdzie on jest w arkuszu w skoroszycie czy w osobnym module? Mówisz że działa poprawnie, gdy ukryty arkusz jest aktywny... Ciekawe bo ukryty arkusz nie może być aktywny, aktywowanie ukrytego arkusza wyrzuci błąd, więc jeśli już musisz tak robić, to go odkryj, zrób co trzeba i ukryj ponownie...

    0
  • #3 20 Cze 2016 18:55
    newbie92
    Poziom 3  

    lesławek napisał:
    Jeśli zamieścisz arkusz to może ktoś ustali dlaczego to nie działa ale sam kod to za mało gdzie on jest w arkuszu w skoroszycie czy w osobnym module? Mówisz że działa poprawnie, gdy ukryty arkusz jest aktywny... Ciekawe bo ukryty arkusz nie może być aktywny, aktywowanie ukrytego arkusza wyrzuci błąd, więc jeśli już musisz tak robić, to go odkryj, zrób co trzeba i ukryj ponownie...


    gdy jest ukryty to oczywistym jest, że nie może być aktywnym, w jaki sposób mogę wybrać z listy coś co fizycznie na niej nie istnieje? Jednak na potrzebę sprawdzenia poprawności działania kodu, wyświetlam go ponownie. w załączniku zamieszczam skoroszyt

    0
  • #4 20 Cze 2016 18:57
    lesławek
    Poziom 31  

    zabezpieczony hasłem...

    0
  • #5 20 Cze 2016 18:58
    newbie92
    Poziom 3  

    już nie jest, zrobiłem re-upload odbezpieczonego pliku.

    0
  • #7 20 Cze 2016 19:20
    newbie92
    Poziom 3  

    teraz jest prawie ok, tylko nie wykonuje fragmentu z weryfikacją czy w polu R2 znajduje się wartość 1 lub 0 ew. wpisania takowej w to pole w momencie kiedy arkusz jest ukryty, ale to sobie już rozpracuję samodzielnie jakoś najważniejsze że się wykonuje większość :D dzięki. w którym fragmencie kodu popełniłem błąd ? :D

    0
  • Pomocny post
    #8 20 Cze 2016 19:26
    lesławek
    Poziom 31  

    No tutaj

    Kod: vbnet
    Zaloguj się, aby zobaczyć kod

    za pomocą metody select wybierasz komórkę w ukrytym arkuszu, ale żeby coś do komórki zapisać wcale nie musisz jej wybierać, wystarczy że napiszesz tak:
    Kod: vbnet
    Zaloguj się, aby zobaczyć kod


    To spowoduje też że kod będzie jakieś 50 razy szybszy :D

    0
  • #9 20 Cze 2016 19:44
    newbie92
    Poziom 3  

    VBA / excel - wykonanie skryptu, nieaktywny arkusz, arkusz ukryty

    tylko dlaczego teraz w momencie kiedy jest ukryty arkusz "licence", nie wykonuje mi zaznaczonego na SS formularzu ? :D w momencie kiedy arkusz jest widoczny fragment z formularzem się wykonuje, po ukryciu już nie ;D

    0
  • Pomocny post
    #10 20 Cze 2016 19:51
    lesławek
    Poziom 31  

    No bo dla niego cells(3,16) i cells(2,17) oznacza komórkę w aktywnym arkuszu uzupełnij to o Worksheets("license")

    0
  • #11 20 Cze 2016 20:00
    newbie92
    Poziom 3  

    lesławek napisał:
    No bo dla niego cells(3,16) i cells(2,17) oznacza komórkę w aktywnym arkuszu uzupełnij to o Worksheets("license")
    nie zauważyłem że tutaj nie poprawiłem jeszcze :) no nic dzięki wielkie za pomoc :)

    0