2
我收到此錯誤:類型不匹配,同時通過Excel的分類文件
Type mismatch: 'objExcel.Cells(...).Value'
在運行此程序:
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
Set objWorkbook = objExcel.Workbooks.Open("myFile.xlsx")
strMach = "string1,string2,string3"
arrMach = Split(strMach, ",")
for j = 0 to Ubound(arrMach)
remove(arrMach(j))
Next
Function remove(strValue)
i = 1
removeCounter = 0
Do Until objExcel.Cells(i, 2).Value = ""
If objExcel.Cells(i, 2).Value = strValue Then
Set objRange = objExcel.Cells(i, 2).EntireRow
objRange.Delete
i = i - 1
removeCounter = removeCounter + 1
End If
i = i + 1
Loop
wscript.echo strValue & " - REMOVED!"
wscript.echo "Removed " & removeCounter & " results."
End Function
程序用來搜索所有現有行的字符串,如果找到,整行將被刪除。
錯誤似乎來自行:
Do Until objExcel.Cells(i, 2).Value = ""
我試圖測試這個在Excel與大約50行的文件,它工作正常。但是,一旦我在大約25,000行的excel文件上使用它,我總會得到錯誤。誰能幫忙?在運行時文件的大小是否會影響我的代碼?
謝謝。
編輯: 我曾試過這在一個50,000+行excel表進行測試,它工作正常。但是,每當我在實際文件上使用它時,仍會出現相同的錯誤。是否有任何特殊字符/值我應該知道哪些不能由上面的代碼正確處理?再次感謝。
感謝。效果很好 – Programmer 2013-03-26 03:32:44