【发布时间】:2013-08-10 03:26:53
【问题描述】:
我正在尝试编写一个宏来从电子表格中删除具有特定内容的列。所有数据都在第一行,长度可变。我认为问题可能与我的范围选择有关。当我尝试进行搜索时,下标总是超出范围。任何意见,将不胜感激。 :)
Sub Disk_Firmware()
Dim c As Range
Dim SrchRng As Range
Dim SrchStr As String
Set SrchRng = ActiveSheet.Range("A1").EntireRow
SrchStr = InputBox("Please enter a search string")
Do
Set c = SrchRng.Find(SrchStr, LookIn:=xlvalues)
If Not c Is Nothing Then c.EntireColumn.Delete
Loop While Not c Is Nothing
End Sub
【问题讨论】:
-
哪一行给出了错误?您的代码也适用于我。不过要注意一点!如果用户在 InputBox 中按下
OK而不输入任何内容,请检查以捕获。否则您的代码将进入无限循环,导致 Excel 崩溃!