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 VBA - ComboBox - błąd podczas pobierania zawartości listy z tablicy

02 Gru 2014 17:50 1260 7
  • Poziom 6  
    Witam serdecznie.

    Na formularzu umieściłem kilka ComboBoxów które zostały podzielone na grupy.
    Piony określają rodzaje linii i dodatkowe reaktory, poziomo określane są grupy stanowiące linię produkcyjną. Podczas aktywacji nowej linii aktywowane jest jednocześnie kilka ComboBoxów. Dopóki stosowałem proste wczytywanie .RowSource osobno dla każdego z formantów wszystko było ok.
    Ze względu iż ComboBoxów ma być jeszcze więcej postanowiłem zastosować tablice i tutaj pojawił się problem: wyświetla się błąd się błąd o braku możliwości ustawienia właściwości .ListIndex. Po zatrzymaniu programu .RowSource wykazuje wartość "" pusty.

    Nie nigdy jeszcze nie stosowałem tablic - proszę o pomoc.

    Poniżej zamiesczam kod oraz sam plik.

    Kod: vb
    Zaloguj się, aby zobaczyć kod
  • Moderator Programowanie
    Nie analizowałem dokładnie, bo strasznie jakieś "nieprzyjazne" to makro.
    1. Co ma znaleźć się w kolejnych ComboBox'ach?
    2. Jakie zadanie ma ta linijka:
    'Me.Controls(nazwa).ListIndex = .Cells(i, z).Value'
    3. Raptem masz 3 ComboBox'y w jednej ramce. Dlaczego tak potwornie skomplikowałeś procedurę 'UserForm_Initialize'?

    Powiedz co i jak, to spróbujemy coś z tym zrobić.

    P.S. A gdzie te wspomniane tablice?
  • Poziom 6  
    1.W kolejnych ComboBoxach będą dobierane dalsze elementy linii, parametry jej pracy itd.
    2. Linia wstawia do arkusza wybraną pozycję listy. stosuję to w celu zapamiętania wybranych ustawień i późniejszego odtworzenia ustawień dla wybranych linii oraz porównania ich
    3. Zamiast powtarzać kilkanaście razy zapis

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    postanowiłem użyć prostej na razie dwuelementowej(dla grupy 2 ComboBox:

    Kod: vb
    Zaloguj się, aby zobaczyć kod
  • Moderator Programowanie
    Paragraf66 napisał:
    1.W kolejnych ComboBoxach będą dobierane dalsze elementy linii, parametry jej pracy itd.
    Niezbyt precyzyjnie zapytałem. Chodzi mi o te w pionie (kolejne ramki)
  • Poziom 6  
    W pionie przewidziano wstępnie do 6 podstawowych linii. Każda z linii na pewno będzie różniła się parametrami. ogólni rzecz biorąc będzie to dosyć rozbudowane.

    Nie wnikając w budowę formularz (takich będzie co namniej kilka) interesuje mnie szczególnie dlaczego nie mogę przekazać adresu listy

    Kod: vb
    Zaloguj się, aby zobaczyć kod
    // wskaźnik pokazuje wartość - ""//

    podczas gdy pozostałe przechodzą. Wyświetlany błąd braku możliwości ustawuienia właściwości
    Kod: vb
    Zaloguj się, aby zobaczyć kod
    wynika prawdopodobnie z braku ustawienia - właściwości
    Kod: vb
    Zaloguj się, aby zobaczyć kod
  • Poziom 6  
    Witam

    Od dłuższego czasu nie mam żadnej odpowiedzi.

    Bardzo proszę o pomoc !!!

    Postaram się uprościć moje pytanie.

    Dlaczego w niżej podanym kodzie nie jest przekazywany adres?

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Zmienna "y" pokazuje "".
    Jeżeli do ListaArray w miejsce zmiennych (adresów) podstawię cyfry dane do ComboBoxa są przekazywane.

    Proszę odezwijcie się, może ktoś wyjaśni mi ten problem.
  • Pomocny post
    Poziom 38  
    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Elementy tej tablicy są typu variant, którym nie nadano wcześniej wartości, stąd mają wartość null.

    Kolega pewnie googla i wkleja, prawda?
  • Poziom 6  
    Działa. :D :D :D

    Dzięki, to co dla fachowca jest banałem dla amatora może stanowić mur nie do przebicia.

    A z tym googlaniem itd. trochę jest prawdy, ale nie do końca.


    Pozdro.