VBA清理CELL中的字符

VBA清理CELL中的字符,这个脚本是为了通过打开工作簿中的所有工作表,并删除特殊字符(所以我可以用CELL重命名TAB )。但是,它只是清理脚本运行的页面。

Sub CleanChar() Dim ws As Worksheet Dim myString As String Dim newString As String For Each ws In Worksheets With ws myString = Range("A1").Value newString = Replace(Replace(myString, ":", ""), """", "") Range("A1").Offset().Value = newString End With Next ws End Sub 

我认为这个问题可能是你缺乏一个. 在你的Range对象前面。 你With ws但是实际上不用ws ,所以你的Range对象只能引用一个工作表。

试试这个稍作修改的代码:

 Sub CleanChar() Dim ws As Worksheet Dim myString As String Dim newString As String For Each ws In Worksheets With ws myString = .Range("A1").Value newString = Replace(Replace(myString, ":", ""), """", "") .Range("A1").Offset().Value = newString End With Next ws End Sub