我有一个名为&#34的用户表单; deleteaccount"有一个组合框。按下按钮后,用户窗体将从该范围加载列表。如果范围内没有数据,则应该出现错误"没有任何内容可以加载"并退出子。 到目前为止,我已经开发了以下代码,但无法找到所需的结果。
Private Sub CommandButton5_Click()
'ASSIGNING THE VARIABLES
Dim ws As Worksheet, tbl As ListObject, rng As Range
'Declaring the Variables
Set ws = Sheets("Cash and Bank Account Details")
Set tbl = ws.ListObjects("newaccount")
Set rng = tbl.ListColumns(3).DataBodyRange
For Each rng In rng
deleteaccount.ComboBox1.AddItem rng.Value
deleteaccount.ComboBox1.ListIndex = 0
Next
If deleteaccount.ComboBox1.ListCount = 0 Then
MsgBox "nothing is load"
Exit Sub
Else
deleteaccount.Show
End If
End Sub
请回顾并帮助我在哪里出错。
感谢。
答案 0 :(得分:0)
评论需要切换位置(与您的问题无关)。而不是For Each rng In rng
你想要翻阅rng
中的单元格并添加到组合框中吗?我的意思是:你正在使用 For Each rng In rng 这是错误的,因为你每次都使用不同目的的rng两次。如果您知道工作表上的范围是一列,则可以尝试
For i = 1 to rng.Rows.count
deleteaccount.ComboBox1.AddItem rng.Cells(i, 1).Value
Next i
deleteaccount.ComboBox1.ListIndex = 0