我想替換一些文本,包括換行符,但它不起作用。使用Chr(10),Chr(13)和Chr(10)+ Chr(13)組合。沒有用。有任何想法嗎?下面的代碼:如何正確替換使用VBA的文本文件中的新行符號?
Sub Replacetext()
Dim MyFolder As String
Dim MyFile As String
Dim Fname As String
MyFolder = "D:\Excel"
MyFile = Dir(MyFolder & "\*.txt")
Do While MyFile <> ""
Fname = MyFolder & "\" & MyFile
Workbooks.OpenText Fname
Cells.Replace What:="a" & Chr(13) & "a", Replacement:="b" & Chr(13) & "b" _
SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False, lookat:=xlWhole
ActiveWorkbook.Close savechanges:=1
MyFile = Dir
Loop
End Sub
爲什麼不使用'vbCrLf'?這應該匹配dos格式文件上的新行。你的文本文件來自Unix系統嗎? – Matt 2014-09-13 20:12:14
不起作用。文本文件是在Windows操作系統中手動創建的。 – Ascorpio 2014-09-13 20:18:02
還有,當我嘗試替換文本沒有換行符時,用包含換行符的文本我得到額外的「」 – Ascorpio 2014-09-13 20:30:07