Board logo

標題: [發問] 如何用VBA整理資料 [打印本頁]

作者: play9091    時間: 2012-4-15 09:28     標題: 如何用VBA整理資料

本帖最後由 play9091 於 2012-4-15 14:33 編輯

最近在想有沒有什麼方可以達到用VBA來整理文字檔……

實際上的做法,取代所有的換行符號。
然後把 "END+++" 用 "END^p+++" 取代。

原本我是用word來做上面的事,但因為還要匯入excel做整理,所以想說能不能用excel達到。
還是說有可以執行外部程式的功能??

效果如付件!!!
作者: kimbal    時間: 2012-4-15 21:32

回復 1# play9091

查看一下FSO(FILE SYSTEM OBJECT)應用
  1. Sub ReadStrangeFile()
  2.      Dim FSO As Object 'FileSystemObject
  3.     Dim FSOFile As Object 'File
  4.     Dim FSOStream As Object 'TextStream
  5.     Dim FSOStreamWrite As Object 'TextStream
  6.     Dim strFileName As String
  7.     Dim strFileNameNew As String
  8.     Dim strCurrLine As String
  9.    
  10.     Set FSO = CreateObject("Scripting.FileSystemObject") 'FileSystemObject
  11.    
  12.     strFileName = "C:\blog\tw\txt\203-整理前.txt"
  13.     Set FSOFile = FSO.GetFile(strFileName)
  14.     Set FSOStream = FSOFile.OpenAsTextStream(1, -2) 'ForReading, TristateUseDefault
  15.    
  16.     strFileNameNew = "C:\blog\tw\txt\203-整理後.txt"
  17.     Set FSOStreamWrite = FSO.OpenTextFile(strFileNameNew, 2, True) 'ForWriting

  18.     strCurrLine = ""
  19.     Do While Not FSOStream.AtEndOfStream
  20.         strCurrLine = strCurrLine & FSOStream.ReadLine
  21.         If Right(Trim(strCurrLine), 3) = "END" Then
  22.             FSOStreamWrite.WriteLine (strCurrLine)
  23.             strCurrLine = ""
  24.         End If
  25.     Loop
  26.     FSOStream.Close
  27.     FSOStreamWrite.Close
  28. End Sub
複製代碼

作者: play9091    時間: 2012-4-15 23:23

回復 2# kimbal


    哇喔!!!
這方法太神了,還沒有用過FSO呢……來慢慢看學習……有不懂的再上來問!!!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)