Excel VBA:如果与combobox中的值匹配,则删除行
我有一个工作表中的一个combobox中的项目列表,由另一个工作表的范围填充。 我已经可以添加一个项目。 现在我想删除一个项目名称,如果combobox的值等于另一个工作表上的范围内的值。 我有以下代码,但它不起作用:
Dim ProjNameWS As Worksheet Set ProjNameWS = Sheets("Project Names") Dim MainWS As Worksheet Set MainWS = Sheets("Main") Application.ScreenUpdating = False ProjValue = Me.CmbProjName.Value LR = ProjNameWS.Cells(Rows.Count, 1).End(xlUp).row For y = 1 To LR If ProjValue = ProjNameWS.Cells(y, 1) Then ProjNameWS.Rows(y).Delete End If Next y Application.ScreenUpdating = True End Sub
顺便说一下,我在一张表中使用了activeX Combobox
这是当我删除On Error Resume Next时出现的错误:
你必须把它当作一个对象
将ProjValue = Me.CmbProjName.Value
replace为ProjValue = ProjNameWS.OLEObjects("CmbProjName").Object.Value
,它将起作用。