如何在VBA中使用FileSystemObject

时间:2015-07-22 10:10:22

标签: vba filesystemobject

所以我对VB很陌生,我只是想创建一些可以打开.txt文件然后读取第一行并输出它的东西。 我已将我的代码放在下面,但是当我运行它时,我收到了错误

  

对象变量或未设置块变量

因为行

objTXT=objFSO.OpenTextFile("C:\...",ForReading)

任何帮助,我觉得我错过了一些非常基本的东西。

Private Sub Text_Reader()

    Dim objFSO As FileSystemObject
    Dim objTXT As TextStream
    Dim str$

    Set objFSO = New FileSystemObject

    objTXT = objFSO.OpenTextFile("C:\...", ForReading)
    str = objTXT.ReadLine
    MsgBox (str)

End Sub

2 个答案:

答案 0 :(得分:1)

您不需要FileSystemObject来阅读文本文件。 你可以这样做(没有任何外部库):

Public Sub readTextFile(filepath As String)
    Dim intFile As Integer
    Dim text As String
    '------------------------------------------------------------------------------------------------------

    intFile = VBA.FreeFile()

    Open filepath For Input As #intFile
    Line Input #intFile, text
    Close intFile

    Call MsgBox(text)

End Sub

答案 1 :(得分:1)

问题不是使用Set来打开。请尝试如下:

Set objTXT = objFSO.OpenTextFile("C:\...", ForReading)