ComboBox !!!

Программирование на Visual Basic for Applications
Rom213
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 24.09.2006 (Вс) 14:57

ComboBox !!!

Сообщение Rom213 » 24.09.2006 (Вс) 21:47

Читал долго и упорно но так что то ничего толкового не нашел, было пару тем, подходящих моему условию но да и те то без ответа то незакончены, либо же еще обиднее не работают.

Так вот вопросик такой. Есть Combobox, их 2: мне нужно что бы при выборе в первом комбобоксе, воторому присвоен один диапазон, во втором комбобоксе, которому также присвоен дипазон,отображались данные, которые содержаться на одном уровне с предыдущим.

Что то вроде этого:
1 12
1 14
2 8
3 6
2 4


При выборе в первом 1 во втором отображалось 12 и 14.


Заранее благодарю.

P.S. Извиняюсь за предыдущеее название.


P.P.S. http://www.contextures.com/xlDataVal13.html и http://www.xldynamic.com/source/xld.Dropdowns.html не подходит так как нет возможности создания ни отсортированного списка ни отделиных строк по подгруппам + надо именно ComboBox

lilodes
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 23.09.2006 (Сб) 10:45

Сообщение lilodes » 25.09.2006 (Пн) 1:54

не понятно условие, по которому 1 = 12 и 14?
формула там или номера последовательны.

ну а вообще для работы с combobox`ами используй нечно вроде

допустим lb1 и lb2

Sub на выбор- на фокус (сам поставишь)
a = lb1.value
max = lb2.ListCount
for i = 1 to max
if lb2.Column(0, i) = a then msgbox "совпадение"
next
end sub

a - значение выбраного в lb1
max - число строк в lb2

далее перебор всех строк lb2 и выполнение нужного условия, в данном случае на совпадение

Удачи

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Re: ComboBox !!!

Сообщение KL » 25.09.2006 (Пн) 1:55

Rom213 писал(а):P.P.S. http://www.contextures.com/xlDataVal13.html и http://www.xldynamic.com/source/xld.Dropdowns.html не подходит так как нет возможности создания ни отсортированного списка ни отделиных строк по подгруппам + надо именно ComboBox

Во-первых, пожалуйста...

Во-вторых, на всякий случай, если ты не знал, в Office несколько аппликаций, и везде могут быть различные виды ComboBox. В Excel (забыв навремя о меню Данные>Проверка...) есть 4 типа :

1) ComboBox на листе из меню Visual Basic
2) ComboBox на листе из меню Формы
3) ComboBox на UserForm
4) ComboBox на CommanBar

Все ведут себя по-разному и имеют разные свойства и методы.

Если речь о пункте 3, то, думаю, что приспособить след. код http://www.j-walk.com/ss/excel/tips/tip47.htm особого труда тебе не составит. Осталось лишь добавить условие в первом цыкле, ну и при желании превратить Sub в Function.
Привет,
KL

Rom213
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 24.09.2006 (Вс) 14:57

Сообщение Rom213 » 26.09.2006 (Вт) 0:24

lilodes писал(а):не понятно условие, по которому 1 = 12 и 14?
формула там или номера последовательны.

ну а вообще для работы с combobox`ами используй нечно вроде

допустим lb1 и lb2

Sub на выбор- на фокус (сам поставишь)
a = lb1.value
max = lb2.ListCount
for i = 1 to max
if lb2.Column(0, i) = a then msgbox "совпадение"
next
end sub

a - значение выбраного в lb1
max - число строк в lb2

далее перебор всех строк lb2 и выполнение нужного условия, в данном случае на совпадение

Удачи

по данному случаю скажу что значения 1 = 12 и =14 выбрал так просто, что бы отнести к конкретному примеру: допустим столбец A - значения разных видов фруктов столбец B - цены, если на один и тот же фрукт стоят допустим разные цены, то выбрав его в первом боксе во втором высвечиваются только те цены котоорые соответствуют данному фрукту: то есть или одна или 2 или 3 или вообще без цены.

Rom213
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 24.09.2006 (Вс) 14:57

Re: ComboBox !!!

Сообщение Rom213 » 26.09.2006 (Вт) 0:27

KL писал(а):Во-первых, пожалуйста...

.


Приношу свои извинения, и говрорю большое СПАСИБО материал оказался интересным. Просто всего не смог уместить :-). Админ тему то закрыл :-)

Rom213
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 24.09.2006 (Вс) 14:57

Re: ComboBox !!!

Сообщение Rom213 » 26.09.2006 (Вт) 0:42

KL писал(а):Во-вторых, на всякий случай, если ты не знал, в Office несколько аппликаций, и везде могут быть различные виды ComboBox. В Excel (забыв навремя о меню Данные>Проверка...) есть 4 типа :

1) ComboBox на листе из меню Visual Basic
2) ComboBox на листе из меню Формы
3) ComboBox на UserForm
4) ComboBox на CommanBar

Все ведут себя по-разному и имеют разные свойства и методы.

Если речь о пункте 3, то, думаю, что приспособить след. код http://www.j-walk.com/ss/excel/tips/tip47.htm особого труда тебе не составит. Осталось лишь добавить условие в первом цыкле, ну и при желании превратить Sub в Function.


Ты прав речь идет о 3-м пункте, но на первый взгляд я глянул и толком пока не могу понять как это увязать(посижу счас немного помучаю все это дело), а на втором разве все должно быть так закручено или есть вариант посмелее и полечче.

Rom213
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 24.09.2006 (Вс) 14:57

Сообщение Rom213 » 26.09.2006 (Вт) 0:43

Еще раз спасибо всем за ответы, если есть новые предложения буду рад, посмотреть. :-)


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 47

    TopList