gpt4 book ai didi

vba - 使用vba宏从文件夹中txt文件的标题中删除2行

转载 作者:行者123 更新时间:2023-12-02 19:06:17 25 4
gpt4 key购买 nike

您好,我使用下面的宏删除文件夹中 txt 文件的前 2 行

Private Sub remove()

Dim FSO, txs, fld, fil As file, content, nLinesToSkip, i
Set FSO = CreateObject("Scripting.FileSystemObject")

nLinesToSkip = 2

fld = FSO.GetFolder("O:\New folder\")
For Each fil In fld
If Right(fil.Name, 3) = "txt" Then

Set txs = fil.OpenAsTextStream(1) ' 1 = for reading
For i = 1 To nLinesToSkip
txs.SkipLine
Next i
content = txs.ReadAll
txs.Close

Set txs = fil.OpenAsTextStream(2) ' 2 = for writing
txs.Write content
txs.Close

End If
Next fil
End Sub

运行此脚本时,我收到行类型不匹配错误对于每个 fil In fld

如果有人可以协助解决此问题,我们将不胜感激

最佳答案

.GetFolder 没有按照您的想法进行操作。它返回一个文件夹对象。您需要该文件夹中的文件。

尝试一下,

Set fld = FSO.GetFolder("O:\New folder\")
For Each fil In fld.Files
...
Next fil

TBH,我不知道您为什么不使用带有 *.txt 文件掩码的更简单的 Dir。

关于vba - 使用vba宏从文件夹中txt文件的标题中删除2行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51725925/

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