Witam Może coś takiego [syntax=vbnet]Private Sub ComboBox1_Change() obszar = "B1:T" & Cells(Rows.Count, "B").End(xlUp).Row TextBox1.Text = Application.VLookup(ComboBox1.Value, Sheets("Arkusz1").Range(obszar), 2, 0) TextBox2.Text = Application.VLookup(ComboBox1.Value, Sheets("Arkusz1").Range(obszar), 3, 0) TextBox3.Text = Application.VLookup(ComboBox1.Value,...
Możesz w właściwościach combo wybrać style i 2 [syntax=vbscript]Me.ComboBox1.Style = 2[/syntax]
A nie byłoby prościej utworzyć listę przy Initialize na podstawie wartości z combo UserrForm1 ? Podmień procedurę w UserForm2 na [syntax=vb]Private Sub UserForm_Initialize() firma = UserForm1.ComboBox1.Value wrs = 2 ComboBox1.Clear With Sheets("Arkusz2") Do While .Cells(wrs, 4) <> Empty If .Cells(wrs, 4) = firma Then ComboBox1.AddItem .Cells(wrs,...
Pokaż ten swój arkusz nad którym pracujesz i wyjaśnij dokładnie co chcesz uzyskać :?: Combobox służy do wygodnej prezentacji albo weryfikacji danych z arkusza Excel. Twój "kod" nie pobiera żadnych danych :D Jeśli dobrze się domyślam z czym masz problem :?: - to np w Excel 2007 wejdź w zakładkę Deweloper - włącz Tryb projektowania - otwórz Właściwości...
Kolego, przerabialiśmy to wczoraj, adams_nt w #5 o tym pisał dzisiaj i znowu ten sam problem?? Rozwiązanie to samo: ustalasz ostatni wiersz w kolumnie E, która jest pusta: [syntax=vb]ost = Range("E10000").End(xlUp).Row + 2[/syntax] (nie wiem czemu dodajesz 2 nie 1...). Użyj G albo H.
[syntax=vb]ListaArray = Array(RodzajLiniiLista, RodzajDodReaktLista)[/syntax] 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?
zobacz to [syntax=vb]Private Sub UserForm_Initialize() ost = Worksheets("Kolor").Cells(Rows.Count, 1).End(xlUp).Row userform.SMkolor.rowsource = "Kolor!A1:A" & ost End Sub[/syntax]
Jeśli chodzi o foto. Źle jest pobierana nazwa pliku. Zakładając, że nazwy obrazków=nazwisko pracownika (a tak z Twojego kodu wychodzi), to [syntax=vb]Private Sub lstFiltr_Change() Dim i As Long, a As Long, ark As Worksheet Dim sciezka As String, nazwa As String Set ark = Sheets("Lista pracowników") a = 0 For i = 0 To lstFiltr.ListCount - 1 If lstFiltr.Selected(i)...
ad.1 Przy zdarzeniu Change ComboBox'a sprawdzany jest każdy znak wprowadzany z klawiatury. Jeśli sprawdzany ma być tylko pierwszy, pierwszym warunkiem będzie Len(NazwaCombo.value)=1, następnie porównujesz (w pętli) z listą. Najprościej wstawić polecenie opuszczenia pętli przy pozytywnym wyniku porównania, a warunkiem kontynuowania kodu zrobić licznik_pętli...
Analogicznie [syntax=vb] For Each c In ActiveSheet.Range("C1:C22") ' przeszukiwanie If c = cc2.Value And Range("A" & c.Row)= cc1.Value Then wiersz = c.Row Exit For End If Next c [/syntax] Edit
To nie taki hop-siup: w VBA masz trochę ograniczoną liczbę obiektów którymi by można to wykonać w miarę prostu, więc trzeba samemu napisać dwa fragmenty kodu: jeden odpowiedzialny za wyłuskanie niepowtarzających się wartości z podanego zakresu i drugi, który je posortuje rosnąco (zakładając, że te dane mają być posortowane). Można by do tego wykorzystać...
dlaczego ograniczenie listy następuje dopiero po wpisaniu spacji Należy zmienić warunek porównujący stringi. Funkcja InStr szuka także wewnątrz. Np pamiętasz, że sala ma w nazwie "020" a nie pamiętasz początku. W przypadku długich ciągów metoda nie sprawdza się. Spróbuj [syntax=vb]If UCase(Left(lista(i, 2), Len(txtOpisSali.Text))) = UCase(txtOpisSali.Text)...
W UserForm1 wystarczy zrobić 3 proste rzeczy: 1. Aby załadować dane do comboboxa, dodaj: [syntax=vb]Private Sub UserForm_Initialize() Dim ostTowar As Long With Arkusz2 ostTowar = .Cells(.Rows.Count, "A").End(xlUp).Row + 1 cmbTowar.RowSource = "Towary!" & Arkusz2.Range("A2:A" & ostTowar).Address End With End Sub[/syntax] 2. Aby przepisywać towar do textboxa...
Listy dla pola kombi nie sortuj poza arkuszem, nie pozbierasz się z indeksami. Nie rozumiem natomiast dlaczego uparłeś się biegać przez ogródek, jeśli do furtki dwa kroki...
Zrobic gotowy dlugo potrwa, tym bardziej ze cala logika nieznana. Zobacz w tym przykladzie, zwlaszcza wlasciwosci BoundColumn, RowSource dla ComboBox i ControlSource dla wszystkiego i kombinuj.
Bez VBA raczej się nie da. Jeśli mowa o VBA, ComboBox ma tę właściwość. W przykładzie uForm uruchamiany przez podwójne kliknięcie. Możesz wybrać z listy lub wpisując pierwsze znaki. Zatwierdzasz Enter'em. Spróbuj, może to jest to...
Czy zamiast poniższego : Worksheets("Arkusz2").OLEObjects("ComboB... = "Nazwa_firmy3" można wstawić jakiś inny kod Można tu wstawiać każdy inny kod :idea: :D ale zawsze musisz wiedzieć co wstawiasz :?: i w jakim celu :?: :D Obecnie - do nie wiadomo w jakim celu stworzonego ComboBoxa :cry: z listą firm pobraną z zakresu: 'Robocze':F6:F34...
OblKierownik1.MatchRequired = True - to nie makrem, to we wlasciwosciach kombo(proektowanie) .ControlSource - wlasciwosci - ma byc adres komorki na arkushe - u mnia dziala
Dzień dobry, Przygotowałem, a raczej zaadaptowałem na podstawie opisanych przykładów kod pod swój arkusz excela. Mam 2 problemy: 1. Potrzebuję w arkuszu "material cost" z którego pobierane są dane dopisywać pozycje - w związku z tym potrzebuję aby combo odświeżało sobie dane przy otwarciu (lub jakiś trigger do odświerzania po wpisaniu nowych danych)...
Poniżej przykład do pierwszej zakładki. Resztę zrobisz sobie analogicznie.
Tak Public Uas As String W podpowiedzi istnieje możliwość wyboru ComboBox1.Value the default property of a combobox is the value property
Zdaje się, że próbujesz oprogramować nie to zdarzenie pola kombi. Interesuje nas zmiana wartości w polu, nie kliknięcie w nie. W Twoim przykładzie Nr indeksu pasuje do tabeli, z której pobierasz dane (RowSouce), więc nie ma problemu z przypisaniem i tak zrobiłem w załączonym przykładzie. Zwróć uwagę na deklarację zmiennej publicznej i przypisywanie...
Można tak: [syntax=vb]Sub AddItem(ByVal sItem As String, ByRef cmbBox As ComboBox) ' adds item retaining alphabetic order Dim l As Long For l = 0 To cmbBox.ListCount - 1 Select Case StrComp(cmbBox.list(l), sItem, vbTextCompare) Case 0: Exit Sub ' already in the combobox Case 1 cmbBox.AddItem sItem, l Exit Sub End Select Next l cmbBox.AddItem sItem End...
Na forum umieściłem plik bez makr bo nie w nich jest problem lecz w userform1. Z makrami czy bez i tak się wiesza.
jak zrobić by po wyborze numeru zamówienia w comboboxie :?: i wpisaniu ilości sztuk w textboxie :?: właśnie o tą wartości powiększają się ilość :?: w komórce wiersza :?: w którym jest zamówienie wybrane z comboboxa :?: Nie jasne gdzie (w którym arkuszu) ? chcesz prowadzić te rozliczenia :cry: Natomiast ilości na asortyment :?: są zliczane w arkuszach...
Tak ma pan racje. Jesteś na forum więc, nie musisz używać zwrotów grzecznościowych (chyba, że adamas_nt ma inne zdanie w tym zakresie, ale miałem już kiedyś konto na elektrodzie i nie spodziewał bym się tego po Nim :D ). udostepniłem tylko tę część kodu. Właściwie to nic nie udostępniasz... Cały twój kod można zastąpić wpisem: [syntax=vb]'wczytuje...
cześć, mam do Was wielką prośbę, ponieważ nie wiem jak do końca zrobić aby w combbox przypisać wartości z arkusza poza opcją Source: =Arkusz1!D8:D25 Czy istnieje aby przypisać takie wartości jakoś inaczej i pomijane były wiersze puste ? Czy ewentualnie można zrobić tak, aby dane wyświetlane w liście combbox były od najmniejszej do największej, ale żeby...
Zależy jakie pole. Zacznij od nagrania makra wstawiania obiektu i coś już będzie wiadomo.
Witam, Chciałbym się dowiedzieć, czy istnieje jakiś sposób, aby po anulowaniu zmian w ComboBox (BeforeUpdate wybiera Cancel) omawiany ComboBox powracał do wyświetlania indeksu wybranego przed próbą dokonania zmiany?
I cóż? Nikt nie ma pomysłu jakby to można fajnie zautomatyzować?
dzięki , pomogło :) pozdrawiam
Jakiej pomocy oczekujesz? Gotowego rozwiązania? Czy podpowiedź: DateTime.Month rozwiązuje problem?
Zmieniłam kod ale nadal nie działa, w załączeniu przykład wraz z kodem
Coś mi się kojarzy z tymi salami, ale kiedy to było... W każdym razie: w załączniku masz formularz z filtrem 2-poziomowym (opcjonalnie). Co prawda to typowa książka telefoniczna, ale zrobiona na tej samej podstawie.
ComboBox ma indywidualne zdarzenia i właściwości. Spróbuj oprogramować przy zmianie (set.focus lub range().select). Rozwinąć bez myszy można stosując Alt+DownArrow. W podanym przykładzie jednak, zamiast ComboBox'ów, o wiele łatwiej byłoby zastosować poprawność danych przez listę. Miałbyś większe możliwości "skakania" po arkuszu przy Workscheet.Change.
Spróbuj poprawność danych>lista (pobierana z zakresu lub wpisana ręcznie).
(at)maciejgonet Zwykła literówka podczas pisania postu :) Dołączam plik. Po kliknięciu w przycisk Szukaj pokaże się forma, trzeba wybrać nazwisko i imię z ComboBox i znów kliknąć Szukaj. Pozdrawiam
Wszystko działa dopóki liczby w combobox'ach mają tyle samo cyfr. To powinno Ci dać do myślenia. ComboBox-y przechowują poszczególne pozycje jako ... ciąg znaków, a nie wartości liczbowe. W swoim kodzie, zamień wartość Value , z wszystkich trzech Combo na liczbę i porównaj wtedy. Np. tak : If Val(ComboBox1.Value) < Val(ComboBox2.Value)...
Zrobiłem na formularzu, bo Excel niewłaściwie pokazywał Combobox po użyciu AddItem.
Hej, mam takie prostackie pytanie:) W jaki sposób można wskazać za pomocą wybranej wartości w combobox kolumnę o takiej samej nazwie w pierwszym jej wierszu i jej ostatni niepusty wiersz? Chociaż jakąś podpowiedź;] [/align][/code][/quote]
nazwa jest taka sama a może to wynikać z tego że na moim UserForm jest więcej elementów niż tylko sam ComboBox ??
Prawdopodobnie nie zawsze masz aktywny właściwy arkusz. Uzupełnij odwołanie Np Me.ComboBox9.RowSource = Sheets("Arkusz1").Rang... 21), Cells(33, 21)).Address ' data
Podmień ComboBox na ListBox...
Witam. Jeżeli wartość w polu ComboBox będzie pusta, w jaki sposób przypisać domyślny wydruk jednej kartki? If Me.Arkusz1 = True Then ThisWorkbook.Sheets("Arkusz1&qu... Copies:=ComboBox End If
Przepraszam za pomylenie kontrolek oto przykład z Combobox-ami
Ponieważ dane które pobierasz masz rozdzielone tabulatorem, wystarczy taka prosta przeróbka: [syntax=vb]Private Sub CommandButton1_Click() ComboBox1.Clear ComboBox2.Clear Dim InFile As Integer InFile = FreeFile plik_txt = Application.GetOpenFilename("Pliki txt(*.txt),*txt") Open plik_txt For Input As InFile While Not EOF(InFile) Line Input #InFile,...
Witam. Jestem w trakcie tworzenia w pliku nowego okna UserForm z opcją drukowania. W sumie to już wszystko zrobiłem ale chcę dodać jeszcze opcję wyboru drukarki ponieważ w pracy mam dostęp do paru drukarek i korzystam ze wszystkich. W oknie dodałem ComboBox i mam pytanie jakim kodem wywołam żeby po rozwinięciu okna ComboBox pokazało mi wszystkie dostępne...
A czemu nie masz tam .BackColor?
Tak. Możesz nawet nie pisać: ComboBox4.RowSource = "Listka" a we właściwościach ComboBox4 (okienko combobox'a na Form) we "właściwości" RowSource wpisać "Listka" i też zadziała. Warunek: taka nazwa musi być w arkuszu.
Nie wystarczy zwykłe przypisanie w kodzie przycisku? Zdaje się, że chodzi też o wypełnienie kolejnych pozycji. Spróbuj: [syntax=vb]Private Sub CommandButton1_Click() ostW = Range("B5").End(xlDown).Row If ostW > 19 Then ostW = 5 Cells(ostW + 1, 2)= ComboBox5.Text Cells(ostW + 1, 3)= val(Wartosc) End Sub[/syntax]
combobox excel excel combobox textbox excel textbox combobox
k7s5a schemat schemat elektra niezgodność towaru umową
Electrolux PerfectCare – dwie poziome kreski „‐ ‐” na wyświetlaczu, brak startu suszenia, blokada panelu, Child Lock, tryb demo Jak działa lodówko-zamrażarka? Budowa, cykl chłodniczy, R600a, No-Frost, inverter, IoT