2017-02-09 5 views
0

Я в тупике Я пробовал следующее и для жизни меня, я не могу понять это ... Вам нужно использовать кнопку comand в списке на форме excel vba.Excel Выберите все элементы в Listbox Vba

Iniatilizing форму на нагрузке ..... он загрузит штраф

Sub UserForm_Initialize() 
UserForm1.LbNumbers.RowSource = "Sheet2!A1:A3"End Sub 

Элементы отображения в ListBox тонкой

У меня есть кнопки управления под окном списка, чтобы выбрать весь код

Sub CbSelectall_Click() 
    For i = 0 To LbNumbers.ListCount - 1 
     LbNumbers.Selected(i) = True 
    Next i 
End Sub 

Если я нажму на кнопку, она переместится к последней строке, но она не будет выбирать все числа в списке. Может ли кто-нибудь сказать мне, как я могу исправить это, чтобы выбрать все числа в списке. Спасибо

+0

В вашем списке доступно свойство 'MultiSelect'. Я подозреваю, что он по-прежнему находится в значении по умолчанию '0 - fmMultiSelectSingle'. Попробуйте изменить это свойство на '2 - fmMultiSelectExtended' – tigeravatar

ответ

0
 
Private Sub lbTraderId_Change() 
    If ResetListBox(lbTraderId) Then 
     Exit Sub 
    ElseIf lbTraderId.Selected(0) Then 
     For i = 1 To lbTraderId.ListCount - 1 
      If lbTraderId.Selected(i) = False Then 
       lbTraderId.Selected(i) = True 
      End If 
     Next i 
    ElseIf lbTraderId.Selected(0) = False Then 
     For i = 1 To lbTraderId.ListCount - 1 
      If lbTraderId.Selected(i) = True Then 
       lbTraderId.Selected(i) = False 
      End If 
     Next i 
    End If 
End Sub 

Private Function ResetListBox(lbx As MSForms.ListBox) As Boolean 
    Dim x As Long 
    Static bExit As Boolean 
    If Not bExit Then 
     x = lbx.ListIndex 
      If x >= 0 And Not lbx Is Me.lbTraderId Then 
       bExit = True 
       lbx.Selected(x) = Not lbx.Selected(x) 
       bExit = False 
       ResetListBox = True 
      End If 
    End If 
End Function 
+0

Erm .... что? Отвечая на этот вопрос, вы, похоже, забыли ответить на этот вопрос. – Tom

+0

Извините, мой интернет был медленным. –

+0

Вы также должны включить объяснение, почему ваш ответ решает исходную проблему OP - это помогает гарантировать, что ответ им полезен, а другие сталкиваются с той же проблемой. Прочитайте эту статью на [answer] для некоторых советов. – Tom

Смежные вопросы