我有一个vba代码,用于删除A-Z,a-z或0-9之外的字符,从A1单元格到G1单元格。我怎么能迭代一整个A:A到G:G?我的代码只适用于单元格。我想要在列中执行所有单元格。请帮助。
Sub test()
Dim a$, b$, c$, k As Integer
a$ = Range("A1").Value
For i = 1 To Len(a$)
b$ = Mid(a$, i, 1)
If b$ Like "[A-Z,a-z,0-9]" Then
c$ = c$ & b$
End If
Next i
Range("G1").Value = c$
End Sub
答案 0 :(得分:1)
您可以重复使用循环或循环版本循环遍历单元格。
可能有一种比这更好的方法,但它应该有效
Sub Test()
Dim a$, b$, c$, k As Integer, LastR#, x As Long
LastR = Range("A" & Rows.Count).End(xlUp).Row
For x = 1 To LastR
a = Range("A" & x).Value
c = ""
For I = 1 To Len(a$)
b = Mid(a$, I, 1)
If b$ Like "[A-Z,a-z,0-9]" Then
c = c & b
End If
Next I
Range("G" & x).Value = c
Next x
End Sub