listview右键菜单如何在VBA“模块”中引用代码
这个写法提示“要求对象”,估计是要求先引用一下,怎么写呢?PublicSubInsertrow()UserForm1.ListView1.ListItems.Add((U...
这个写法提示“要求对象”,估计是要求先引用一下,怎么写呢?
Public Sub Insertrow()
UserForm1.ListView1.ListItems.Add ((UserForm1.ListView1.ListItems.Count) + 1)
With ListView1
.SetFocus
.ListItems(.ListItems.Count).Selected = True
.SelectedItem.EnsureVisible
End With
End Sub
Public Sub Delete()
Dim i As Integer
For i = ListView1.ListItems.Count To 1 Step -1
If ListView1.ListItems(i).Selected Then
ListView1.ListItems.Remove i
End If
Next i
End Sub
这个问题是下面这个问题的续
搞定了,多谢各位 展开
Public Sub Insertrow()
UserForm1.ListView1.ListItems.Add ((UserForm1.ListView1.ListItems.Count) + 1)
With ListView1
.SetFocus
.ListItems(.ListItems.Count).Selected = True
.SelectedItem.EnsureVisible
End With
End Sub
Public Sub Delete()
Dim i As Integer
For i = ListView1.ListItems.Count To 1 Step -1
If ListView1.ListItems(i).Selected Then
ListView1.ListItems.Remove i
End If
Next i
End Sub
这个问题是下面这个问题的续
搞定了,多谢各位 展开
1个回答
展开全部
你的代码是要在模块中引用userform1的listview1控件。所以在引用listview1的地方,listview1的前面都要加上userform1。也就是下面的引用模式:
userform1.listview1
或者你在每个过程里都定义一个变量用来引用userform1的listview1。代码修改如下:
Public Sub Insertrow()
dim lv as object '声明一个Object类型的变量lv
set lv =userform1.listview1 '用lv引用userform1.listview1
lv.ListItems.Add ((UserForm1.ListView1.ListItems.Count) + 1)
With lv '同过lv来访问listview1
.SetFocus
.ListItems(.ListItems.Count).Selected = True
.SelectedItem.EnsureVisible
End With
End Sub
Public Sub Delete()
dim lv as object '声明一个Object类型的变量lv
set lv =userform1.listview1 '用lv引用userform1.listview1
Dim i As Integer
For i = lv.ListItems.Count To 1 Step -1 '同过lv来访问listview1
If lv.ListItems(i).Selected Then
lv.ListItems.Remove i
End If
Next i
End Sub
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询