gpt4 book ai didi

vba - 将文本文件输入Excel表格

转载 作者:行者123 更新时间:2023-12-03 02:26:03 24 4
gpt4 key购买 nike

我有一个文本文件,其中包含 30 行到 1000 行数据,每行包含 10 到 200 个字符。我试图在初始化时将此数据输入到用户表单上的文本框中。

我现在使用的代码...

Private Sub UserForm_Initialize()

Dim TextFile As Integer
Dim FilePath As String
Dim FileContent As String

FilePath = "C:\PATH\MyText.txt"

TextFile = FreeFile

Open FilePath For Input As TextFile

FileContent = Input(LOF(TextFile), TextFile)

'MsgBox FileContent
UserForm1.TextBox1 = Input(LOF(TextFile), TextFile)

Close TextFile

End Sub

当我尝试将数据输出到 MsgBox 时(但不显示所有数据),它工作正常,但是当我尝试将其输出到 TextBox 时,我收到错误...

Run-time error '62':

Input past end of file

我猜这里的 EOF 标志还没有准备好......我该怎么做?也许是因为输入文件太大?

任何想法或建议都会很棒!

最佳答案

Input 在读取文件时移动“指针”。

您可以在此处阅读整个文件:

FileContent = Input(LOF(TextFile), TextFile)

然后再一次在这里:

UserForm1.TextBox1 = Input(LOF(TextFile), TextFile)

但到那时 FileContent 已经拥有您的全部内容,并且文件句柄#TextFile 已经位于 EOF。因此,当您尝试再次输入时,您的输入会超出文件末尾。

读取后立即关闭文件,然后执行UserForm1.TextBox1 = FileContent

无需[尝试]读取文件两次:您将整个内容读入FileContentMsgBox 截断它的原因是,MsgBox(就像单元格一样)不是为此而设计的,并且具有最大内容长度。 TextBox1 应该能够处理它(除非您给它一个 MaxLength 值)。

关于vba - 将文本文件输入Excel表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47186566/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com