当我使用excel打开一个.txt文件(记事本文件)时,工作表名就是默认打开的记事本文件的文件名。因此,当打开不同的记事本文件时,工作表名称会有所不同。下游代码需要这个工作表名称是固定的。无论如何要将工作表名称更改为固定名称,例如“sheet1”。顺便说一句,不能使用代号,因为使用打开文件中数据的宏不是另一个工作簿。
谢谢!
当您从 Excel 打开 .txt 文件时,您不需要代号而不是工作表名称。总会有 1 张。因此,在您的代码中,您始终可以将该表称为
wb.Sheets(1)
wb
工作簿对象在哪里。
供您参考,您使用 VBA 打开的每个 .txt 文件都不能有一个通用名称,除非您通过代码设置它。如果你这样做,你将不得不仍然使用wb.Sheets(1)
例如
wb.Sheets(1).Name = "Blah Blah"
你可以调用你的文本文件 sheet1.txt 吗?那能解决你的问题吗?
我正在想象您的宏会动态打开文本文件,因为您想使用 excel 内置的 csv 解析。也许之后对数据进行排序和过滤。
Siddarth 给了你一个很好的线索,但你不应该担心名称或工作表,因为正如他所说,你有工作表对象可用于下游代码。
wb.Sheets(1)
现在,如果您想在打开文件的子例程之外引用此工作表。为您的使用全局变量
wb