2012-08-25 52 views
0

我試圖在代碼中使用代碼(OlleSjögren先生的答案在8月15日13:08),用兩行代替多行xml文件文件夾d:\ eBobo在Excel(2007)中讀取和更改多個XML文件VBA - 其他

例如,我想改變一條線(在該文件夾中的所有XML文件中的相同):

AAAAAAAAAA

入線(也在所有XML文件):

bbbbbbbbbb

CCCCCCCCCC

這是我的嘗試:

Sub ReplaceStringInFile() 

    Const sSearchString As String = "d:\eBobo\*.xml" 

    Dim sBuf As String 
    Dim sTemp As String 
    Dim iFileNum As Integer 
    Dim sFileName As String 
    Dim sFilePath As String 


    sFileName = Dir(sSearchString) 

    Do While sFileName <> "" 

     sFilePath = "d:\eBobo\" & sFileName 'Get full path to file 
     iFileNum = FreeFile 
     sTemp = "" 'Clear sTemp 

     Open sFilePath For Input As iFileNum 

      Do Until EOF(iFileNum) 

       Line Input #iFileNum, sBuf 
       sTemp = sTemp & sBuf & vbCrLf 

      Loop 

     Close iFileNum 

     sTemp = Replace(sTemp, "aaaaaaaaaa", "bbbbbbbbbb" <br /> "cccccccccc") 

     iFileNum = FreeFile 

     Open sFilePath For Output As iFileNum 
     Print #iFileNum, sTemp 

     Close iFileNum 

     sFileName = Dir() 'Get the next file 
    Loop 
End Sub 

我得到一個消息語法錯誤。任何幫助將不勝感激。

謝謝你的回答!

回答

0

試試這個,除去多餘的引號:

sTemp = Replace(sTemp, "aaaaaaaaaa", "bbbbbbbbbb <br /> cccccccccc") 

如果你確實想在你的XML代碼的兩行試試這個:

sTemp = Replace(sTemp, "aaaaaaaaaa", "bbbbbbbbbb" & vbCRLF & "cccccccccc") 
+0

我已經盡力了,但是這只是返回一個行:bbbbbbbbbb
cccccccc謝謝Daniel –

+0

根據您的附加信息向您提供其他信息。 –

+0

丹尼爾,這個作品完美!非常非常感謝你!親切的問候。 –