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

Excel 2013 - VBA - Rozwijana lista - invalid property value

21 Mar 2016 14:54 1209 10
  • Poziom 8  
    Witam,

    tworzę w pracy mały program - generalnie większość to różnego typu funkcje, które moge zrobić sam bez używania VBA.
    Jestem totalnie zielony i udało mi się znaleźć kod, który powinien działać

    Kod: vbnet
    Zaloguj się, aby zobaczyć kod


    I tutaj mam problem. W tym momencie wywala mi błąd "invalid property value".

    Co chcę osiągnąć:
    Po kliknięciu w listę, którą dodałem w formacie ActiveX chciałem wybierać z listy, która będzie się zawężać po wpisywaniu kolejnych liter i cyfr.
    W zeszycie QuotationForm, w komórce AC15 ma wyrzucać mi Item Code z zeszytu "Articles", kolumny A ( komórki od 2 do 300).

    W innych miejscach arkusza mam formuły, które dopasują mi dane jeśli będzie tam jakaś wartość.

    Jutro rano na spotkaniu muszę pokazać, że to działa, a jednak nie mogę sobie poradzić z tak trywialną rzeczą, jak głupia lista.

    Mam nadzieję, że znajdzie się król VBA i pomoże mi wybrnąć z tej sytuacji :)
  • Poziom 32  
    Zamieść plik z całym projektem... Ogólnie można powiedzieć że niekompliuje ci się bo brakuje ci referencji do Microsoft Forms 2.0 Object Library W Tools-> References
    Jeśli go tam nie ma to daj browse i system32\ FM20.DLL a potem zaznacz Microsoft Forms 2.0 Object Library... powinno pomóc
  • Poziom 8  
    lesławek napisał:
    Zamieść plik z całym projektem... Ogólnie można powiedzieć że niekompliuje ci się bo brakuje ci referencji do Microsoft Forms 2.0 Object Library W Tools-> References
    Jeśli go tam nie ma to daj browse i system32\ FM20.DLL a potem zaznacz Microsoft Forms 2.0 Object Library... powinno pomóc


    Lesławek,

    dziękuję za odpowiedź.
    Jestem zielony w tych sprawach, ale referencja jest zaznaczona.

    W załączniku jest plik pomocniczy - orginalnego nie mogę zamieścić z uwagi na wrażliwość danych.
    Rozłożenie komórek jest dokładnie takie same, jak w orginalnym pliku.
    Sprawa z "przyciskiem" powinna być banalnie prosta, ale jednak nie jest. Nie dla mnie.
    Będę bardzo wdzięczny za pomoc.
  • Poziom 32  
    gzelson napisał:
    Po kliknięciu w listę, którą dodałem w formacie ActiveX chciałem wybierać z listy, która będzie się zawężać po wpisywaniu kolejnych liter i cyfr.

    Hm w pliku który zamieściłeś nie ma żadnego kodu....
    Bez VBA można to zrobić np tak:
  • Poziom 8  
    lesławek napisał:
    gzelson napisał:
    Po kliknięciu w listę, którą dodałem w formacie ActiveX chciałem wybierać z listy, która będzie się zawężać po wpisywaniu kolejnych liter i cyfr.

    Hm w pliku który zamieściłeś nie ma żadnego kodu....
    Bez VBA można to zrobić np tak:


    Wybacz, poniosło mnie i zapomniałem, że zrobiłem nowy plik.

    Próbowałem z tym sposobem, ale w bazie mamy ponad tysiąc kodów, których liczba sukcesywnie się powiększa. Ciężko byłoby szukać i wertować, jeśli niektóre z nich różnią się tylko cyfrą.
    W załączniku jest poprawiona wersja pliku.
    Zależy mi na dwóch rzeczach, bo miejsce, gdzie ma "wypluwać" wynik udało mi się ustawić.
    - Chciałbym, żeby userform brał dane z zakładki Articles, z kolumny A
    - Po kliknięciu przycisku "save" znikało okienko, chyba, że coś jest nie tak.

    Z góry dziękuję za pomoc i porady :)

    Usunąłem plik, bo przez pomyłkę dodałem stary, ale okazuje się, że nie mogę wrzucić z macro enebled. W jakim formacie mogę go tutaj dodać, żeby działało macro ?
  • Poziom 32  
    Wybacz ale piszesz o user formach i kodach, a zamieszczasz plik xlsx który z definicji nie obsługuje VBA...
  • Poziom 8  
    lesławek napisał:
    Wybacz ale piszesz o user formach i kodach, a zamieszczasz plik xlsx który z definicji nie obsługuje VBA...


    lesławek,

    przed chwilą się zorientowałem i edytowałem powyższy post.
    Możesz podpowiedzieć z jakim rozszerzeniem mam wrzucić na elektrodę ?
  • Pomocny post
    Poziom 34  
    Witam
    Pliki musisz pakować rar/zip itp.

    Co do ładowania danych do comboboxa odpowiedzialna jest część j.n
    musisz dopisać z jakiej zakładki są pobierane dane czyli

    Kod: vbnet
    Zaloguj się, aby zobaczyć kod
  • Poziom 8  
    clubs napisał:
    Witam
    Pliki musisz pakować rar/zip itp.

    Co do ładowania danych do comboboxa odpowiedzialna jest część j.n
    musisz dopisać z jakiej zakładki są pobierane dane czyli

    Kod: vbnet
    Zaloguj się, aby zobaczyć kod


    Jest ! Udało się i działa :). Jestem na prawdę bardzo wdzięczny za pomoc.

    A w jaki sposób mogę sprawić, że lista po kliknięciu "zapisz" będzie wprowadzała w wybraną komórkę dane, a następnie okno samo się zamknie?

    Dodaje działający plik - może ktoś inny będzie szukał, to będzie miał praktycznie gotowca.
  • Pomocny post
    Poziom 32  
    Hm może tak.
    Kod: vbscript
    Zaloguj się, aby zobaczyć kod
  • Poziom 8  
    lesławek napisał:
    Hm może tak.
    Kod: vbscript
    Zaloguj się, aby zobaczyć kod


    Panowie lesławek, oraz clubs - bardzo dziękuję za pomoc. Oba zaproponowane rozwiązania działają, nauczyły mnie kolejnych nowych rzeczy i jestem za to bardzo wdzięczny.


    Gdyby ktoś był ciekawy jak wygląda finalny kod (być może jest więcej takich laików jak ja), to podaje go poniżej:
    Kod: vbscript
    Zaloguj się, aby zobaczyć kod


    Jeszcze raz bardzo dziękuję !