我正在动态选择列表框中的一个项目。现在,当选择该项目时,所选项目必须显示在列表框的前端。更像是滚动条必须移动到该项目。这样最终用户就会知道该项目已被选择。我尝试使用 SetFocus 但收到错误:
对象不支持此属性或方法
错误发生在.SetFocus(idx) = True下面一行:
ReqSearchvalue = Range("B" & reqrow).Value
Sheets("Main").Activate
With Sheets("Main").Ent_ListBox
For i = 0 To .ListCount - 1
Value = .List(i)
If Value = ReqSearchvalue Then
idx = i
Exit For
End If
Next i
.Selected(idx) = True
.SetFocus(idx) = True
End With
Run Code Online (Sandbox Code Playgroud)
请分享您的想法。
SetFocus不是一个方法ListBox。但是,您可以设置该TopIndex属性来执行此操作:
With Sheets("Main").Ent_ListBox
For i = 0 To .ListCount - 1
Value = .List(i)
If Value = ReqSearchvalue Then
idx = i
Exit For
End If
Next i
.Selected(idx) = True
.TopIndex = idx
End With
Run Code Online (Sandbox Code Playgroud)