我有一个VBA脚本,我用它来向单元格添加撇号,但我目前有200000行要检查,它似乎需要相当长的时间。我使用的代码如下:
Sheets("Sheet1").Select
myrange = "c21:c200000"
For Each cell In ActiveSheet.Range(myrange)
If cell.Value <> "" Then cell.Value = "'" & cell.Value
Next
有关如何使代码运行得更快的任何想法,或者您是否知道其他可以更好地运行的代码?
答案 0 :(得分:0)
我不明白你想用单引号实现什么,但一般来说,你可以通过限制范围填写所有空单元格并立即写入所有单元格:
Const DefaultString = "'"
Dim ws As Worksheet, r As Range
Set ws = ThisWorkbook.Sheets(1)
Set r = ws.Range("A1:A200000")
' Fill last cell to ensure that SpecialCells looks to complete range
If r.Cells(r.Rows.Count, 1) = "" Then r.Cells(r.Rows.Count, 1) = DefaultString
Set r = r.SpecialCells(xlCellTypeBlanks)
r.Value2 = DefaultString