2

我有数以千计的小 CSV 文件要汇总(首先要在脚本中进行一些处理)。它们位于 NAS 设备上,更准确地说是“SNAP”服务器。我在 Excel 中使用 VBA 取得了一些成功——如果我记得(一个月前),大约在一分钟内完成了大约 700 个文件。实际上,它只成功了一半:快照服务器包含 80% 的 pdf 和一些专有格式的文件,只有 20% 的 CSV。测试文件类型的循环花费了 2 小时以北的执行时间,脚本显然完全忽略了我输入的日期过滤。快速结果或“成功”是在我制作并放在 C 驱动器上的 700 个 CSV 副本上。我已经做了将近 20 年的 VBA 脚本,我认为我很擅长;在过去的 9 年里,我从 VBA 进行了大量的 CSV 读写。

我可以不将快照服务器或多或少地视为使用 VBA 的任何驱动器/文件夹吗?
VBScript 会更合适吗?(毕竟已经使用 FileSystemObject)
如果我可以使用 VBS,我可以将脚本存储在 NAS 上并使用 taskscheduler 运行它吗?我很感激你们有快照服务器经验的任何提示或陷阱!

4

1 回答 1

1

关于语言选择的一些想法:

VB Script 比 VBA 更轻量级,因为它不需要安装 MS Office。语法相似,因此没有真正的生产力差异。

强烈建议将 Powershell 用于 Windows 系统管理任务、一般文本文件处理等。

关于使用 NAS 服务器的一些想法:

a) 如果在工作站上运行脚本,您应该能够使用 URI 字符串 \\myserver\myshare 连接到 NAS 上的共享。如果不是,您可能需要在脚本运行之前将驱动器号映射到该共享。

b) 如果你想在 NAS 上运行你的脚本,有两件事需要考虑: NAS 操作系统是否被锁定,这样你就不能添加自己的计划任务,它是 Linux 还是某种 Windows 风格。许多 NAS 产品使用嵌入式 Linux,因此直接在 NAS 上运行 VBA 或 VBScript 解决方案可能无法工作,除非它基于嵌入式 XP 之类的东西,并且您可以访问计划任务等。

希望这可以帮助...

于 2009-11-04T16:26:20.667 回答