我必须在excel文件中将一个字符替换为另一个字符。
我使用了以下replace
函数,但由于某些单元格中超过1024个字符限制,它会停在那里。
Sub Replace()
With Sheets("Sheet1").Range("A1:A629")
.Cells.Replace ",", ";", xlPart, xlByRows, False
End With
End Sub
我知道Substitute
函数会做什么
Cells(1, 2) = "=SUBSTITUTE(A1,"","","";"")"
但我如何将其用于细胞范围。
由于
答案 0 :(得分:7)
试试这个
Sub Replace()
Dim rng As Range, cell As Range
Set rng = Sheets("Sheet1").Range("A1:A629")
For Each cell In rng
cell = WorksheetFunction.Substitute(cell, ",", ";")
Next
End Sub
答案 1 :(得分:5)
试试这个。请注意,它使用VBA Replace
函数,因此您需要重命名'Replace`子例程。
Sub ReplaceText()
For Each c In Sheets("Sheet1").Range("A1:A629").Cells
c = Replace(c.Value, ",", ";")
Next c
End Sub
注意:只有在单元格中有值,没有公式时,这才有效。因为Excel具有公式length limit of 1024 characters。但鉴于您有这个特定错误,您的单元格不能是公式。