Комбобокс !!!

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

Комбобокс !!!

Сообщение Rom213 » 17.10.2006 (Вт) 20:17

Народ всем привет !!!
Нужна подсказка как сделать правильние: есть файл в нем форма а в ней 3 комбобокса. Хотелось бы узнать как в 3 отобразить допустим значение 3 столбца из соответствующей строки.

:-)
Благодарю за внимание.
Вложения
Book1.rar
(12.61 Кб) Скачиваний: 105

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

Сообщение Rom213 » 18.10.2006 (Ср) 23:51

совсем извиняюсь, не вставил вот этот код в файлик, но он вроде как не помогает так как выдает 0 не могу понять почему

For Y = 7 To 10000
Dim Produkt As Double
Produkt = 0
If Worksheets("ñêëàä").Cells(Y, 4).Value = "" Then
Y = 10000
Else
If Worksheets("ñêëàä").Cells(Y, 4).Value = Vvod1.ComboBox1.Value Then
If Worksheets("ñêëàä").Cells(Y, 2).Value = Vvod1.ComboBox2.Value Then
Produkt = Produkt + Worksheets("ñêëàä").Cells(Y, 8).Value
End If
End If
End If
Vvod1.TextBox5.Value = Produkt
Next Y

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 19.10.2006 (Чт) 7:03

А что он должен выдавать то? У тебя Produkt на каждом шаге цикла обнуляется.

И вот это что такое?

Y = 10000


Пользуйся Exit For для выхода из цикла.


З.Ы. Теги форматирования тебе помогут! а пока этоn перл

Produkt = Produkt + Worksheets("ñêëàä").Cells(Y, 8).Value

отправляется в цитаты
Последний раз редактировалось Viper 19.10.2006 (Чт) 10:11, всего редактировалось 2 раз(а).
Весь мир матрица, а мы в нем потоки байтов!

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

Сообщение Rom213 » 19.10.2006 (Чт) 9:01

Y = 10000 это диапазон поиска (с 7 до 1000).
а теги посморю. thk.

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 19.10.2006 (Чт) 10:14

Ндя...

1. Теги не смотреть надо, а применять к приводимому коду.
2. Ты пишешь Y = 10000. Зачем? Чтобы выйти из цикла? Так для этого есть Exit For.
3. Еще раз повторяю, у тебя переменная Produkt на каждом шаге цикла обнуляется! И никакой суммы ты соответственно не получишь.
Весь мир матрица, а мы в нем потоки байтов!

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

Сообщение Rom213 » 19.10.2006 (Чт) 23:21

хорошо, что она обнуляется я вижу тока не могу понять почему после того как я выбираю 2 комбобокс и значение в нем он мне все равно пишет 0.
Exit for я понял(вроде бы)

For Y = 7 To 10000
Dim Produkt As Double
Produkt = 0
If Worksheets("ñêëàä").Cells(Y, 4).Value = "" Then
Exit For

но не это меня сильно тревожит :-), почему 0 :-(

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

Сообщение Rom213 » 19.10.2006 (Чт) 23:32

вроде бы как на этом этапе Produkt = Produkt + Worksheets("ñêëàä").Cells(Y, 8 ).Value он должен же накапливать значения а он почему то превращает их в 0.

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 20.10.2006 (Пт) 7:39

Ндаа, объявление переменных в цикле - это сильно.
Может выкинуть ее просто?

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 20.10.2006 (Пт) 11:59

Ну вот как человеку объяснить? :shock:
ну сделай так что ли...

Код: Выделить всё
Dim Produkt As Double
For Y = 7 To 10000
' чей то делаем
Produkt = Produkt + Worksheets("ñêëàä").Cells(Y, 8).Value
Next Y
Весь мир матрица, а мы в нем потоки байтов!

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

Сообщение Rom213 » 20.10.2006 (Пт) 13:14

Спасибочки за подсказочку не обратил внимание ;-), но даже при выносе система выдает 0. :-(

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

Сообщение KL » 21.10.2006 (Сб) 14:50

Попробуй так.
Вложения
Book1(2).xls
(49.5 Кб) Скачиваний: 105
Привет,
KL

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

Сообщение Rom213 » 21.10.2006 (Сб) 19:57

Огромное спасибочки за помощь KL, которая оказывается практически в каждом топике и за его гениальные мысли :-))).

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

Сообщение Rom213 » 21.10.2006 (Сб) 21:51

кстати что бы значение появлялось автоматически или что бы оно то есть значение было бы в textbox? но что то combobox3.value и textbox1.value не помогает и значок из строчки combobox 2 не уходит, почему то :-=).
Опять тербуется хирургическое вмешательство. :-)

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

Сообщение KL » 21.10.2006 (Сб) 22:18

1. ComboBox1=0

2. TextBox1=RemoveDuplicates(rng)(1)

3. Uberi stroku
If ComboBox1=Empty Then...

Pardon za latinitsu I netochnosti - pishu s BlackBerry.
Привет,
KL

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

Сообщение Rom213 » 22.10.2006 (Вс) 0:43

нет немного не то хотел да и это дельце не получается так как не могу найти If ComboBox1=Empty Then :-) вроде бы как нет такого, а на это TextBox1=RemoveDuplicates(rng)(1) ругается.

Латиница это ничего главное что понятно ;-)

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

Сообщение KL » 22.10.2006 (Вс) 2:56

Сильно извиняюсь - не надо было полагаться на память, а то наворотил всякой ерунды. Попробуй это.
Вложения
Book1(2).xls
(50 Кб) Скачиваний: 99
Привет,
KL

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

Сообщение Rom213 » 22.10.2006 (Вс) 19:16

ничего страшного и на этом огромное спасибо.


Вернуться в VBA

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

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

    TopList