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 - VBA w Excelu - automatyczna zmiana wyboru

pop3k1 24 Wrz 2014 07:56 1218 5
  • #1 24 Wrz 2014 07:56
    pop3k1
    Poziom 8  

    Witam, mam listę rozwijaną w Excelu, standardową Dane -> Poprawność danych.
    np.
    (tutaj standardowy napis przy otwarciu arkuszu np. wybierz kraj pochodzenia:)
    -> 1. Polska
    -> 2. Niemcy
    -> 3. Austria
    i teraz chciałbym aby jakieś makro warunkowe potrafiło automatycznie zmieniać wybór z listy nie zabierając mi możliwości zmiany manualnej. (np przy jakimś warunku np. wybór języka, program domyślnie ustawi mi kraj pochodzenia, np. na "-> 2. Niemcy" ale będę mógł jeszcze to zmienić ręcznie)
    Może łatwiej byłoby gdyby lista była napisana z poziomu VBA? Przy okazji, jak taką listę w VBA napisać?
    Dzięki za pomoc

    0 5
  • #2 24 Wrz 2014 08:03
    adamas_nt
    Moderator Programowanie

    pop3k1 napisał:
    i teraz chciałbym aby jakieś makro warunkowe potrafiło automatycznie zmieniać wybór z listy nie zabierając mi możliwości zmiany manualnej. (np przy jakimś warunku np. wybór języka, program domyślnie ustawi mi kraj pochodzenia
    Może właśnie ta komórka z listą powinna temu służyć? Trochę nie rozumiem: makro wybór języka, by zmienić wartość na liście wyboru języka?

    0
  • #3 24 Wrz 2014 08:31
    pop3k1
    Poziom 8  

    Już tłumaczę.
    Arkusz dla przykładu ma wyglądać tak:
    [A1] Wybierz język: [B1] Wybierz z listy rozwijanej: -> Polski, Niemiecki, Angielski
    [A2] Wybierz kraj: [B2] Lista rozwijana: -> Polska, Niemcy, Anglia (tutaj też lista rozwijana z tą różnicą, że przy zmianie w komórce B1 program podpowiada automatycznym wyborem, jeśli w B1 wybierzemy Polski -> podpowiedzią w komórce B2 będzie Polska, jeśli Niemiecki -> lista rozwijana w B2 ustawi się na Niemcy.)

    Ponawiam również pytanie o napisanie listy w VBA.

    0
  • #5 24 Wrz 2014 09:55
    pop3k1
    Poziom 8  

    Wszystko fajnie, tylko zmiana drugiego formularza (Polska, Niemcy, Anglia) powoduje zmianę w pierwszym, poza tym ta lista miała być w środku kodu większego programu w VBA, stąd też moje pytanie o listę rozwijaną w VBA.

    0
  • #6 25 Wrz 2014 09:43
    adamas_nt
    Moderator Programowanie

    pop3k1 napisał:
    Wszystko fajnie, tylko zmiana drugiego formularza (Polska, Niemcy, Anglia) powoduje zmianę w pierwszym
    Ale tak wynika z Twojego opisu. Teraz to już nic nie rozumiem ;)

    Listę do ComboBox/Listbox mozna przypisać na wiele sposobów (z tablicy .List=tablica, z zakresu .rowsource=Range(), pojedynczo przez add). Dokładnie opisane jest to w pomocy.

    0