Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2011, 09:11   #1
НYo_Moe
Новичок
Джуниор
 
Регистрация: 12.12.2011
Сообщений: 2
По умолчанию Зависимые списки

Доброго времени суток!

Хочу попросить у вас помощи с зависимыми ComboBox (КБ), т.е. КБ2 у меня с полями из марок автомобилей, КБ3 хочу сделать из конкретных моделей данной марки. Просто не знаю с какой стороны подойти.

Во вложении мои наработки.

Думал каким образом сделать это:

1. Определяем что написано в ComboBox2 (Например: Audi)
2. Определяем позицию ячейки (Например: K1)
3. Передаем эти данные цикл для загрузки, в ComboBox3
Код:
Dim i As Integer
    i = 2
    Do While Sheets("Авто").Range("K" & i) <> ""
    ComboBox3.AddItem Sheets("Авто").Range("K" & i)
        i = i + 1
Loop
Из выше описанного я не знаю как определить позицию соответствия текста и ячейки (ну просто поиск как правильно использовать) и как сделать цикл с проверкой на пустую ячейку.

Вроде все описал.

Заранее спасибо!

Upd: Проверил 3й пункт, работает, цикл нормально загружает список авто, правда перед загрузкой другой марки авто его надо очищать.
Вложения
Тип файла: rar Журнал пропусков.rar (57.4 Кб, 52 просмотров)

Последний раз редактировалось НYo_Moe; 12.12.2011 в 09:38.
НYo_Moe вне форума Ответить с цитированием
Старый 12.12.2011, 10:00   #2
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

здесь смотрели?
Связанные выпадающие списки
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 12.12.2011, 12:17   #3
НYo_Moe
Новичок
Джуниор
 
Регистрация: 12.12.2011
Сообщений: 2
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
Ага, не знаю как использовать в моем случае. Я же все делаю через форму.

Спасибо за помощь! Уже сделал. Может кому пригодится:
Код:
Private Sub ComboBox2_Change()
    ' Очищаем предварительно список
    ComboBox3.Clear
    ' Ищем необходимый столбец
    Dim rgResult As Range
        Set rgResult = Range("Марки2").Find(ComboBox2.Text, , xlValues, , , True, True, True)
        If Not rgResult Is Nothing Then
            'MsgBox Left(rgResult.Address, 3)
            ' Подгружаем модели авто
            Dim i As Integer
                i = 2
                Do While Sheets("Авто").Range(Left(rgResult.Address, 3) & i) <> ""
                    ComboBox3.AddItem Sheets("Авто").Range(Left(rgResult.Address, 3) & i)
                    i = i + 1
                Loop
        End If
End Sub

Последний раз редактировалось НYo_Moe; 12.12.2011 в 14:12.
НYo_Moe вне форума Ответить с цитированием
Старый 12.12.2011, 14:34   #4
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Или так еще.
Код:
Private Sub ComboBox2_Change()
' Подгружаем модели авто
    Sheets("Авто").[b1] = ""
    ComboBox3.Clear
    Sheets("Авто").Range("B1").Formula = "=MATCH(""" & ComboBox2.Text & """,C1:CE1,0)"
    ss = Sheets("Авто").[b1]
    i = 2
    Do While Sheets("Авто").Cells(i, ss + 2) <> ""
        ComboBox3.AddItem Sheets("Авто").Cells(i, ss + 2)
        i = i + 1
    Loop
End Sub
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Зависимые списки blin09 Microsoft Office Excel 4 14.11.2011 01:37
Зависимые списки Verano naranjo Microsoft Office Access 2 04.06.2010 22:35
Зависимые списки tae1980 Microsoft Office Excel 19 06.05.2009 13:03
Зависимые списки. Tehcorp Microsoft Office Excel 0 04.02.2009 18:38
Зависимые списки ASR Microsoft Office Excel 1 30.11.2007 13:46