Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
1 / 1 / 0
Регистрация: 07.06.2012
Сообщений: 212

Как получить коллекцию всех выбраных элементов комбобокс?

11.07.2012, 17:24. Показов 2577. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можно ли так обратится к коду?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.07.2012, 17:24
Ответы с готовыми решениями:

Можно ли как-то получить коллекцию всех существующих объектов класса?
Добрый вечер. Предположим я насоздавал объектов, сколько не известно. Предположим они создаются по нажатию кнопки. Есть ли способ...

Как получить коллекцию элементов Canvas
У меня на форме есть Canvas, в нем есть около 26 * 4 Image. Вообщем мне нужно перебрать эти Image's при этов в предыдущем убрать...

Как получить коллекцию элементов ListBox
Доброго времени суток. Уважаемые подскажите. Например в textBox, если нам нужен текст который в нем находится, то пишем ...

11
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38195 / 21128 / 4309
Регистрация: 12.02.2012
Сообщений: 34,733
Записей в блоге: 14
11.07.2012, 17:44
А какой комбо-бокс? На форме или на листе? На форме у меня не получается обеспечить множественный выбор - выбирается только один элемент.

Да и на листе комбо не имеет свойства MultiSelect...
0
1302 / 404 / 22
Регистрация: 21.10.2011
Сообщений: 1,285
11.07.2012, 20:06
saladd, а что значит выбранных?
0
 Аватар для mc-black
2786 / 718 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
11.07.2012, 20:23
Тут конечно имеется ввиду Lisbox вместо Combobox. Автор немного напутал с терминологией, верно saladd? И получил в ответ 3 дурацких бессмысленных ответа)
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38195 / 21128 / 4309
Регистрация: 12.02.2012
Сообщений: 34,733
Записей в блоге: 14
11.07.2012, 20:29
Цитата Сообщение от mc-black Посмотреть сообщение
И получил в ответ 3 дурацких бессмысленных ответа)
- выбирайте выражения!
1
 Аватар для mc-black
2786 / 718 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
11.07.2012, 20:55
Ой, извините господа. Беру свои слова обратно (т.к. редактировать свой пост уже не могу), только один такой ответ - мой.
1
1 / 1 / 0
Регистрация: 07.06.2012
Сообщений: 212
11.07.2012, 21:01  [ТС]
Я имел ввиду есть ли в Визуале подобие как в java script , раз тебе и получил в одном массиве откуда выбрал и что бырал ,а то много нужно обработать комбобкс.
0
 Аватар для AndreA SN
1021 / 125 / 2
Регистрация: 26.08.2011
Сообщений: 1,219
Записей в блоге: 2
30.07.2015, 12:04
Старая тема. Но ответа в ней я не увидел. А вопрос на самом деле достаточно интересный.
Есть ряд комбобоксов на форме. Их нужно в цикле опросить и загнать данные в массив, который должен представлять из себя список значений и имена комбобоксов, их содержащих.
Выкладываю файлик с вариантом решения задачки
Вложения
Тип файла: rar Книга1.rar (12.7 Кб, 5 просмотров)
0
 Аватар для AndreA SN
1021 / 125 / 2
Регистрация: 26.08.2011
Сообщений: 1,219
Записей в блоге: 2
30.07.2015, 13:38
не стал лепить второй цикл с переменной j

Добавлено через 11 минут
решил на всякий случай выложить код

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Private Sub CommandButton2_Click()
' наполняем комбобоксы данными
' это не относится к задаче, но создает почву для теста
' принцип наполнения комбобоксов тот же что и при опрашивании
 
j = -1
For Each i In Me.Controls
j = j + 1
    If TypeName(i) = "ComboBox" Then
        With i
            .Clear
            .AddItem "1"
            .AddItem "2"
            .AddItem "3"
            .AddItem "4"
            .AddItem "5"
        End With
        i.Value = i.List(j)
    End If
Next i
 
End Sub
 
Private Sub CommandButton1_Click()
Dim mas(1, 4) ' имя- комбобокса - значение комбобокса
' наполняем массив именами и значениями комбобоксов (опрашиваем все комбобоксы на форме в цикле)
j = -1
For Each i In Me.Controls
j = j + 1
    If TypeName(i) = "ComboBox" Then
        mas(0, j) = i.Name
        mas(1, j) = i.Value
    End If
Next i
' вываливаем содержимое массив в текстбокс - для иллюстрации содержимого массива
Me.TextBox1.Text = ""
For i = 0 To UBound(mas, 2)
    Me.TextBox1.Text = Me.TextBox1.Text & mas(0, i) & Chr(9) & mas(1, i) & Chr(13)
Next i
End Sub
Добавлено через 3 минуты
нужно помнить, что индексация контролов на форме начинается с единицы, а элементов массива - с нуля! поэтому индекс контрола на форме (i) соответствует индексу массива (j), уменьшенному на 1
j = i-1

Добавлено через 1 час 17 минут
вот интересно с коллекцией контролов получается
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub CommandButton3_Click()
Set col = New Collection ' коллекция комбобоксов
' наполняем коллекцию комбобоксами (опрашиваем все комбобоксы на форме в цикле)
For Each i In Me.Controls
    If TypeName(i) = "ComboBox" Then
        col.Add Me.Controls(i) 
    End If
Next i
' вываливаем содержимое в текстбокс
Me.TextBox1.Text = ""
For Each i In col
    Me.TextBox1.Text = Me.TextBox1.Text & CStr(Me.Controls(i).Name) & Chr(9) & CStr(Me.Controls(i).Value) & Chr(13)
Next i
End Sub
Работает некорректно эта фигня. Но выглядит покрасивше, чем возня с массивами
где косяк?
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
30.07.2015, 15:32
Цитата Сообщение от AndreA SN Посмотреть сообщение
Работает некорректно эта фигня. Но выглядит покрасивше, чем возня с массивами
Интересная логика Как в анекдоте: "да, не стоИт... но зато как красиво висит!"
Поправил код. Здесь i - уже объект-контрол, так что выражение Controls(i) ошибочно.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub CommandButton3_Click()
Dim col As Collection, i As Object
Set col = New Collection ' коллекция комбобоксов
' наполняем коллекцию комбобоксами (опрашиваем все комбобоксы на форме в цикле)
For Each i In Me.Controls
    If TypeOf i Is ComboBox Then  'лучше
        col.Add i                 '!
    End If
Next i
' вываливаем содержимое в текстбокс
Me.TextBox1.Text = ""
For Each i In col
    Me.TextBox1.Text = Me.TextBox1.Text & i.Name & Chr(9) & i.Value & Chr(13) '!
Next i
End Sub
1
 Аватар для AndreA SN
1021 / 125 / 2
Регистрация: 26.08.2011
Сообщений: 1,219
Записей в блоге: 2
30.07.2015, 21:41
Казанский, с "висит" просто в точку)))
Я потерялся: за что "лучший ответ" ставить)))
спасибо тебе)))
вот теперь темку вроде завершили
0
 Аватар для AndreA SN
1021 / 125 / 2
Регистрация: 26.08.2011
Сообщений: 1,219
Записей в блоге: 2
31.07.2015, 10:16
Собрал всё в аккуратную кучку)))
Вложения
Тип файла: rar Книга исправлено.rar (12.3 Кб, 7 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
31.07.2015, 10:16
Помогаю со студенческими работами здесь

Как получить коллекцию элементов поля в MySQL
У меня есть прога, которая работает с определенной таблицей в БД MySQL, есть ли какой-нибудь метод, который возвращает коллекцию, или...

Получить коллекцию выделенных элементов в ListBox
Доброго времени суток! Совсем недавно начал изучение sharp'a,и сразу же возникло множество вопросов..помогите разобраться в следующем: ...

Как получить коллекцию контроллов?
Как получить коллекцию элементов? Например на TabControl есть несколько "текстбоксов", и как получить коллекцию, всех этих элементов...

Перенос выбраных элементов с CheckedListBox в ListBox
Мне надо перенести все выбранные элементы, а мой код переносит только по 1, как перенести все выбранные? ...

Как получить сумму всех элементов?
Как получить сумму всех элементов temph ? float temph = (float)rang2 / SummRang2; NormСriterion = temph; label8.Text +=...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru