如何在 VBA 中使用 FileSystemObject
How to use the FileSystemObject in VBA
所以我对 VB 很陌生,我只是想创建一些东西来打开 .txt 文件,然后读取第一行并输出它。
我把我的代码放在下面但是当我 运行 它时我得到错误
Object variable or with block variable not set
因为线路
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
您不需要 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
问题是没有使用 Set
打开。尝试如下:
Set objTXT = objFSO.OpenTextFile("C:\...", ForReading)
所以我对 VB 很陌生,我只是想创建一些东西来打开 .txt 文件,然后读取第一行并输出它。 我把我的代码放在下面但是当我 运行 它时我得到错误
Object variable or with block variable not set
因为线路
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
您不需要 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
问题是没有使用 Set
打开。尝试如下:
Set objTXT = objFSO.OpenTextFile("C:\...", ForReading)