Excel Forum - Porady, Pomoc,  Excel Help, Excel FAQ Strona Główna
 FAQ  RegulaminRegulamin  Szukaj   Użytkownicy   Grupy   Rejestracja   Profil   Twoje wiadomości   Zaloguj 


Poprzedni temat «» Następny temat
Zamknięty przez: Zbiniek
11-02-2019, 13:15
userform i combobox
Autor Wiadomość
caelian
Starszy Forumowicz


Pomógł: 1 raz
Posty: 57
Wysłany: 11-02-2019, 11:04   userform i combobox

mam problem z komboboxem w userform

1. próbuje koerzustać z:

Kod:
Private Sub OBSZAR_DropButtonClick()

Me.OBSZAR.Clear
Me.OBSZAR.AddItem "obszar 01"
Me.OBSZAR.AddItem "obszar 02"
Me.OBSZAR.AddItem "obszar 03"
Me.OBSZAR.AddItem "obszar 08"

End Sub


oraz:

Kod:
Private Sub OBSZAR_click()

OBSZAR.Clear
OBSZAR.AddItem "obszar 01"
OBSZAR.AddItem "obszar 02"
OBSZAR.AddItem "obszar 03"
OBSZAR.AddItem "obszar 08"

End Sub


i o ile w 1 [przypadku pojawia się wybór tak jego zaznaczenie nic nie daje.
a w 2 przypadku lista w ogóle nie pokazuje się

dodam tylko że pole kombi ma mieć te 4 opcje na sztywno.
ID posta: 362343 Skopiuj do schowka
 
 
BrunO 
ExcelSpec



Pomógł: 126 razy
Posty: 551
Wysłany: 11-02-2019, 11:19   

Ja uzupełnianie list comboboxów wrzucam raczej w UserForm_Initialize a nie klikanie w comboboxa. Pomijam już nawet cuda, które ci się dzieją prawdopodobnie z tego powodu, ale chociażby z uwagi na wydajność kodu. Po co ma ci wczytywać te listy za każdym kliknięciem, skoro wartości są stałe?
ID posta: 362345 Skopiuj do schowka
 
 
caelian
Starszy Forumowicz


Pomógł: 1 raz
Posty: 57
Wysłany: 11-02-2019, 11:27   

Dlatego właśnie proszę tutaj o pomoc bo kombinuje i nie umiem ich wpisać do boxa.
z initialize też nic nie wyświetlało

/edit - chyba znalazłem prob,lem
Kod:

Private Sub UserForm_Initialize()
Me.OBSZAR.AddItem "Tekst_1"
Me.OBSZAR.AddItem "Tekst_2"
End Sub


traktowałem to:

Kod:
UserForm_Initialize


jako domyslną nazwę obiektu.
Czyli jesli moją userform nazwałem AmortyzacjaPrzyszła

to kod zmieniałem na:
Kod:

Private Sub AmortyzacjaPrzyszła_Initialize()
Me.OBSZAR.AddItem "Tekst_1"
Me.OBSZAR.AddItem "Tekst_2"
End Sub




i nie działało

a teraz jak chce zczytać wartość obszaruto używam?

Kod:

zmienna = obszar.value


?
ID posta: 362347 Skopiuj do schowka
 
 
apollo
ExcelSpec


Pomógł: 1230 razy
Posty: 4264
Wysłany: 11-02-2019, 11:50   

caelian napisał/a:
Dlatego właśnie proszę tutaj o pomoc bo kombinuje i nie umiem ich wpisać do boxa.
z initialize też nic nie wyświetlało

/edit - chyba znalazłem prob,lem
Kod:

Private Sub UserForm_Initialize()
Me.OBSZAR.AddItem "Tekst_1"
Me.OBSZAR.AddItem "Tekst_2"
End Sub


traktowałem to:

Kod:
UserForm_Initialize


jako domyslną nazwę obiektu.
Czyli jesli moją userform nazwałem AmortyzacjaPrzyszła

to kod zmieniałem na:
Kod:

Private Sub AmortyzacjaPrzyszła_Initialize()
Me.OBSZAR.AddItem "Tekst_1"
Me.OBSZAR.AddItem "Tekst_2"
End Sub




i nie działało

I prawidłowo. Bez względu na nazwę Form zawsze jest
Kod:

UserForm_Initialize

Cytat:

a teraz jak chce zczytać wartość obszaruto używam?

Kod:

zmienna = obszar.value


?

A jak deklarowana jest zmienna, obszar? Zawsze podaj kompletny kod. Generalnie tak jest.
ID posta: 362349 Skopiuj do schowka
 
 
BrunO 
ExcelSpec



Pomógł: 126 razy
Posty: 551
Wysłany: 11-02-2019, 12:17   

Z tego co ja zrozumiałem, OBSZAR to nie zmienna a combobox, co swoją drogą przydałoby się zaznaczyć w nazwie tegoż.
Stosując np. przedrostek cmb_ łatwiej później się w kodzie zorientować, czy pracujemy na zmiennej czy na obiekcie.

Dopóki pracujesz na 2 obiektach i 3 zmiennych nie ma to może znaczenia, ale gdy zrobi się tego naście jeśli nie dziesiąt, to wyrobienie sobie dobrych nawyków procentuje.
ID posta: 362350 Skopiuj do schowka
 
 
caelian
Starszy Forumowicz


Pomógł: 1 raz
Posty: 57
Wysłany: 11-02-2019, 12:44   

Poprzednie pomogłe - dzięki

teraz kolejny problem z combobox i pętlą for - także w userform:

Kod:

Public Nr_OBSZ As String
Public x As Control
Public c As Byte

Private Sub Przypisz_Obszary_Click()
For Each x In AmortyzacjaPrzyszła.Controls
        If x = True Then
            If x.Caption = "Klasa Amortyzacji" And OBSZAR.Value = "OBSZAR 01" Then
                       
            'Cells(2, c) = c
            Cells(20, c) = "01 " & x.Caption
            c = c + 1
            p = p + 1
           
            Range("T5") = p

        End If
        z = z + 1
    End If
Next x

End Sub


jak to działa?
na userform mam checkboxa "klasa amortyzacji"
w combobox mam mam 4 nazwy obszarów(jak wczesniej"
dla tego przycisku będzie jeszcze kilka checkboxów (CBX)

i jak cche aby to działało:

dla każdego zaznaczonego CBX ma pobrać x.caption i przypisać sam nr obszaru:
czy li dla powyzszego przykladu jesli "Klasa..." jest zaznaczona i wyubrany jest obszar 01 to w komórkę ma wpisać "01 Klasa Amortyzacji" jak 02 to "02 Klasa amortyzacji" itd
ID posta: 362352 Skopiuj do schowka
 
 
Zbiniek 
Excel Expert



Zaproszone osoby: 2
Wersja: Win Office 2013
Pomógł: 404 razy
Posty: 2577
Wysłany: 11-02-2019, 13:15   

Koleżanko / kolego caelian

1. Mam już dość czytania Twojego bełkotu i poprawiania Twoich postów. Wolę robić bardziej przyjemne rzeczy.

2. Już Artik dał Ci do zrozumienia, że różnych problemów nie porusza się w tym samym wątku. Teraz podobna sytuacja. Myślisz, że jak podasz tytuł wątku "Excel", to będzie mógł wrzucać wszystko do tego tematu-worka? Nie, nie będziesz mógł.

Reasumując:
wątek zamykam do czasu potwierdzenia, że ze zrozumieniem przeczytałeś Regulamin naszego forum i że od tego czasu będziesz go przestrzegał (łącznie z uwagami adminów / moderatorów). Zgłoś się w ShoutBoxie na stronie startowej forum z prośbą o odblokowanie tematu - któryś z moderatorów/administratorów zrobi to.
Jeśli masz inne zdanie na ten temat, to powiedz to. Nie będziemy się przecież nawzajem męczyć.
_________________
pozdrawiam
Zbiniek

Pisz po polsku! Jest różnica czy siedzisz w sadzie czy w sądzie. "Język polski jest ą-ę" :-)

Prawdopodobieństwo otrzymania satysfakcjonującej odpowiedzi jest proporcjonalne do właściwego sformułowania problemu (popartego załącznikiem).

Jest załącznik - jest impreza

http://rtfm.killfile.pl/
ID posta: 362354 Skopiuj do schowka
 
 
Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Theme xandgreen created by spleen& Programosy modified v0.3 by warna
Opieka techniczna www.marketingNET.pl

Archiwum

Strona używa plików cookies.

Kliknij tutaj, żeby dowiedzieć się jaki jest cel używania cookies oraz jak zmienić ustawienia cookie w przeglądarce.
Korzystając ze strony użytkownik wyraża zgodę na używanie plików cookies, zgodnie z bieżącymi ustawieniami przeglądarki.
Sprawdź, w jaki sposób przetwarzamy dane osobowe