我打算在VBA中创建一些基本上将从根文件夹开始的一个或多个目录中的所有文件。长话短说,我使用filesystemobject运行所有的文件夹,然后获取这些文件夹中的所有文件。移动到下一个文件夹等VBA,FileSystemObject,Windows排序顺序
我遇到的问题是,我需要按照在Windows中找到的相同文件夹排序顺序吐出我的数据(到表单中)。我知道这是不是说每一个固定的概念,所以这里有一个简单的例子,因为它显示在Windows(对我来说):
的Windows排序:
FolderTest\000
FolderTest\0
FolderTest\0001
不要太奇怪,当使用FSO它返回的子文件夹在不同的(也许更符合逻辑)顺序:
FolderTest\0
FolderTest\000
FolderTest\0001
我希望有人可能有什么人可以做的就是这一点的想法,因为它在Windows效果展示给使出。这仅仅是一个例子,这些文件可以被命名为任何东西,但对于名称中的字母字符,它似乎表现得更好。我不一定会结婚使用FSO,但我甚至不知道在哪里寻找替代品。我知道我可以将这些列入数组中,但我不确定需要什么样的魔术才能按照“适当”的顺序进行排序。就我所知,有一些方法或某些东西可以使这一切变得更好。预先感谢任何帮助!
通过“窗口中的”,我想你的意思是“Windows资源管理器”,它通常排序的名字。因为这显然不是这种情况,所以我建议按修改日期或其他字段对它进行排序。如果不知道,我们无法真正回答你的问题。 – paddy
@paddy在Windows资源管理器中,文件夹绝对按名称排序。 – Finch042
可能值得注意的是,文件在Windows资源管理器中“排序”的方式仅仅是它们显示给用户的方式。 FSO按照逻辑顺序返回它们。使用'DIR'函数返回文件的顺序相同,但速度比FSO快。考虑到这一点,这是一个重复的问题,BrettDJ的答案应该指向正确的方向。 HTTP://计算器。com/a/8691872/1467082 –