excelperfect 文本文件是一種常用的文件格式,,使用文本文件讀取和存儲(chǔ)信息不僅快而且簡(jiǎn)單。VBA能夠很好地操作文本文件,,下面是要使用到的一些代碼指令。 Open 打開(kāi)文件以便進(jìn)行讀寫(xiě),。 For Output 指定該模式打開(kāi)文本文件時(shí),創(chuàng)建或修改文本文件,但無(wú)法從該文件中提取內(nèi)容,。 For Input 指定該模式打開(kāi)文本文件時(shí),從該文件中提取信息,,但不能修改該文件,。 For Append 在文本文件末尾添加新文本。 FreeFile 提供尚未使用的文件序號(hào),。使用FreeFile,,自動(dòng)返回下一個(gè)可用的序號(hào)供文件使用。 Input 從文件中讀取指定數(shù)量的字符,。 Write 寫(xiě)入帶有引號(hào)的文本到文件中,。 寫(xiě)入文本到文件中,但不帶引號(hào),。 Close 關(guān)閉文件,。 代碼1:創(chuàng)建文本文件 Sub CreateTextFile() Dim iFileNumber As Integer Dim strFilePath As String '創(chuàng)建的文件的路徑和名字 strFilePath = 'C:\MyFile.txt' '確定下一個(gè)可用的文件序號(hào) iFileNumber = FreeFile '打開(kāi)文本文件 Open strFilePath For Output As iFileNumber '寫(xiě)入文本 Print #iFileNumber, 'Hello!' Print #iFileNumber, 'This is a text file.' Print #iFileNumber, 'excelperfect.' '保存并關(guān)閉文件 Close iFileNumber End Sub 代碼2:從文本文件中提取文本
代碼3:修改文本文件 Sub ModifyTextFile() Dim iFileNumber As Integer Dim strFilePath As String Dim strFileContent As String '文本文件的路徑 strFilePath = 'C:\MyFile.txt' '確定下一個(gè)可用的文件號(hào) iFileNumber = FreeFile '以讀文件模式打開(kāi)文本文件 Open strFilePath For Input As iFileNumber '在字符串變量中存儲(chǔ)文件內(nèi)容 strFileContent = Input(LOF(iFileNumber), iFileNumber) '關(guān)閉文本文件 Close iFileNumber '查找并替換內(nèi)容 strFileContent = Replace(strFileContent, 'Hello','Hi') '確定下一個(gè)可用的文件號(hào) iFileNumber = FreeFile '以讀寫(xiě)文件模式打開(kāi)文本文件 Open strFilePath For Output As iFileNumber '寫(xiě)入新數(shù)據(jù)到文件中 Print #iFileNumber, strFileContent '關(guān)閉文件 Close iFileNumber End Sub 代碼4:在文本文件中添加內(nèi)容
代碼5:使用帶分隔符的文本文件填充數(shù)組 Sub FillArrayWithTextFile() Dim strDelimiter As String Dim iFileNumber As Integer Dim strFilePath As String Dim strFileContent As String Dim LineArray() As String Dim DataArray() As String Dim TempArray() As String Dim row As Long Dim col As Long Dim i As Long Dim j As Long strDelimiter = ';' strFilePath = 'C:\MyFile.txt' row = 0 '以讀模式打開(kāi)文本文件 iFileNumber= FreeFile Open strFilePath For Input As iFileNumber '將文件內(nèi)容存儲(chǔ)到字符串變量中 strFileContent = Input(LOF(iFileNumber), iFileNumber) '關(guān)閉文本文件 Close iFileNumber '拆分成行數(shù)據(jù) LineArray() = Split(strFileContent, vbCrLf) '讀取數(shù)據(jù)到數(shù)組變量中 For i =LBound(LineArray) To UBound(LineArray) If Len(Trim(LineArray(i))) <> 0 Then '通過(guò)分隔符拆分行數(shù)據(jù) TempArray = Split(LineArray(i), strDelimiter) '確定列數(shù) col = UBound(TempArray) '重新調(diào)整數(shù)組邊界 ReDim Preserve DataArray(col, row) '將行數(shù)據(jù)存儲(chǔ)到數(shù)組 For j = LBound(TempArray) To UBound(TempArray) DataArray(j, row) = TempArray(j) Next j End If '下一行 row =row + 1 Next i End Sub 代碼6:刪除文本文件
|
|
來(lái)自: hercules028 > 《VBA》