powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Combobox и принуждение
20 сообщений из 20, страница 1 из 1
Combobox и принуждение
    #37403087
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, подскажите по примеру
с combobox, так как не вкурить, как заставить отображаться ещё больше колонок в выпадающем списке (в примере их две, а надо штук 6).
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37403097
Фотография Ivan33
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan33Коллеги, подскажите по примеру
с combobox, так как не вкурить, как заставить отображаться ещё больше колонок в выпадающем списке (в примере их две, а надо штук 6).
вот такой вариант стрёмный
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429516
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Не хотел топик создавать новый. Но:
Есть Combobox. Мне нужно при нажатии кнопки, что бы проверялся Combobox.
Если он пустой то месседж показать
если есть какое-то значение, то выполнить процедуру.
Сделал так... Но не работает...
Код: plaintext
1.
2.
3.
4.
If Len(ComboBox1.Value)= 0  Then
    MsgBox "sss"
        Exit Sub
    End If 
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429534
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-,

Код: plaintext
1.
2.
 'для информации - ActiveDocument.ComboBox1.Clear 'убирает, стирает, очищает Clear - Очистить все внесённые в ComboBox строки
        'для информации - Количество_строк_в_ComboBox1 = ActiveDocument.ComboBox1.ListCount
        'для информации - ActiveDocument.ComboBox1.List = intМассив загоняет в ComboBox1 массив одной строкой кода
Топик назван шикарно , надо подумать, что Ивану ответить
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429541
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
смотрите у cboPart КолумнКоунт чему равно?? - 2??, а надо 6
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429555
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,
у меня в Combobox RowSourse равен диапазону в котором 961 строка.
когда делаю так
ComboBox1.ListCount - то значение равно 961.
а меня именно интересует пусто Combobox или нет в момент нажатия кнопки.
не понял вас ) и что такое cboPart ?
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429572
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделал вот так
Код: plaintext
1.
2.
3.
    If Len(ComboBox1.Text) =  0  Then
    MsgBox "sss"
        Exit Sub
    End If
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429579
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-,
что такое cboPart?
это ответ для Ивана
а меня именно интересует пусто Combobox или нет в момент нажатия кнопки
На здоровье перед тем как кнопку нажать узнайте
Количество_строк_в_ComboBox1 = ActiveDocument.ComboBox1.ListCount
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429583
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что значит "пусто"?
Если у вас .RowSource задан как диапазон листа, то комбобокс пустым быть не может.
Если же вас интересует тот вопрос, что у вас данных в диапазоне нет - так и проверять на "пустоту" придется либо заданный диапазон, либо циклом весь List() комбобокса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
For i= 1  To ComboBox1.ListCount- 1 
    If Not (IsEmpty(ComboBox1.List(i,  0 )) And IsEmpty(ComboBox1.List(i,  1 ))) Then Exit For
Next
If i>=ComboBox1.ListCount Then
    MsgBox "Combo is Empty"
Else
    ' ...
End If
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429586
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreTMЧто значит "пусто"?
Если у вас .RowSource задан как диапазон листа, то комбобокс пустым быть не может.
Если же вас интересует тот вопрос, что у вас данных в диапазоне нет - так и проверять на "пустоту" придется либо заданный диапазон, либо циклом весь List() комбобокса:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
For i= 1  To ComboBox1.ListCount- 1 
    If Not (IsEmpty(ComboBox1.List(i,  0 )) And IsEmpty(ComboBox1.List(i,  1 ))) Then Exit For
Next
If i>=ComboBox1.ListCount Then
    MsgBox "Combo is Empty"
Else
    ' ...
End If

ну я проверяю на наличие текста в Combobox . Если ничего не выбрано в нем. То нужно выдать месседж. Если что-то выбрано то делать процедуру...
Мое решение работает Возможно не совсем правильно... но текста меньше и ошибок пока нет...
спасибо.
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429593
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-, какое Ваше в 17:26??
что по малому куску
If Len(ComboBox1.Value)=0 Then
MsgBox "sss"
Exit Sub
End If
Можно понять
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429598
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю-O_o-, какое Ваше в 17:26??
что по малому куску
If Len(ComboBox1.Value)=0 Then
MsgBox "sss"
Exit Sub
End If
Можно понять
ну это я значение Combobox хотел узнать... по этому и поставил Value вместо Техт
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429615
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-, я про то что ни цикла ни остальных признаков нет
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429625
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-,

Повесьте обработку на событие Change комбобокса. Тогда и кнопка не понадобится...
Кроме того, хелп говорит:
.ListIndex
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
The ListIndex property contains an index of the selected row in a list.
Values of ListIndex range from –1 to one less than the total number of rows in a list (that is, ListCount – 1).
When no rows are selected, ListIndex returns –1. When the user selects a row in a ListBox or ComboBox,
the system sets the ListIndex value. The ListIndex value of the first row in a list is 0,
the value of the second row is 1, and so on.

Note If you use the MultiSelect property to create a ListBox that allows multiple selections,
the Selected property of the ListBox (rather than the ListIndex property) identifies the selected rows.
The Selected property is an array with the same number of values as the number of rows in the ListBox.
For each row in the list box, Selected is True if the row is selected and False if it is not. In a ListBox that
allows multiple selections, ListIndex returns the index of the row that has focus, regardless of whether
that row is currently selected.
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429646
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю-O_o-, я про то что ни цикла ни остальных признаков нет
Вот весь код. ниже процедура которую мне сделали... Я пока еще не дошел к тому, что бы разобраться как она работает
И перед ее запуском мне нужно проверить, пустой Combobox или нет. Все.
Код: plaintext
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.
Private Sub CommandButton1_Click()
    Dim nRange
    If Len(ComboBox1.Text) =  0  Then
    MsgBox "sss"
        Exit Sub
    End If
    For Each nRange In ActiveWorkbook.Names
        If nRange.name = "rel_plan_city" Then Exit For
    Next
    Dim aCity(), aCity2()
    aCity = nRange.RefersToRange.Value
    aCity2 = aCity
    ReDim aCity2( 1  To UBound(aCity2,  1 ),  1  To UBound(aCity2,  2 ))
    Dim i, j
    j =  0 
    For i =  1  To UBound(aCity,  1 )
        If IsEmpty(aCity(i,  1 )) Then Exit For
        If aCity(i,  1 ) <> Me.ComboBox1.Value Then
            j = j +  1 
            aCity2(j,  1 ) = aCity(i,  1 )
            aCity2(j,  2 ) = aCity(i,  2 )
        End If
    Next
    For i =  0  To Me.ListBox1.ListCount -  1 
        If Me.ListBox1.Selected(i) Then
            j = j +  1 
            aCity2(j,  1 ) = Me.ComboBox1.Value
            aCity2(j,  2 ) = Me.ListBox1.List(i,  0 )
        End If
    Next
    nRange.RefersToRange.Value = aCity2
    ComboBox1.Value = ""
    MsgBox "бла-бла-бла!!!"
   End Sub
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429659
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-,
обалдеть вторая строка If Len(ComboBox1.Text) = 0 Then
и что она там считает??
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429664
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю-O_o-,
обалдеть вторая строка If Len(ComboBox1.Text) = 0 Then
и что она там считает??
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37429699
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-,

я уже выше ответил, вроде:

Код: plaintext
1.
2.
3.
4.
5.
6.
Private Sub CommandButton1_Click()
    If ComboBox1.ListIndex = - 1  Then
        MsgBox "Выберите в комбо"
        Exit Sub
    End If
    Dim nRange
    ...
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37430309
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreTM-O_o-,

я уже выше ответил, вроде:

Код: plaintext
1.
2.
3.
4.
5.
6.
Private Sub CommandButton1_Click()
    If ComboBox1.ListIndex = - 1  Then
        MsgBox "Выберите в комбо"
        Exit Sub
    End If
    Dim nRange
    ...

ну а чем мой вариант хуже? я не пойму...
...
Рейтинг: 0 / 0
Combobox и принуждение
    #37431553
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-ну а чем мой вариант хуже? я не пойму...
Потому что у вас может быть строка в комбо с "пустым" значением .BoundColumn, и тогда .Text будет пустым, но паттерн-то - непуст.
В то же время, ListIndex=-1 соответсвует вашему требованию - невыбрано значение в комбо.

И вообще, я тут подумал - если вы так беспокоитесь, чтобы сначала выбиралось значение в комбобоксе - так инициализируйте листбокс .Enabled в False, а при выборе значения в комбо - переключайте в True. Тогда точно сначала придется выбрать значение в комбо
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Combobox и принуждение
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]