excel - Excel vba 宏可打开其他 excel 文件并在该文件中运行宏
问题描述
我有一个 excel 文件列表(数百个),每个文件都包含一个宏来更新一些数据。
现在我想创建一个脚本来打开每个文件并在打开的文件中调用宏,以便在每个文件中更新这些数据。
所以我创建了一个名为“call_all_macros.xlsm”的新excel文件,并创建了脚本来遍历所有文件并调用宏。不幸的是它不起作用,它正确迭代,似乎它调用宏并保存它,但实际上数据没有更新(虽然文件正在保存)。
这是我用来调用宏的代码,有时它在这里不起作用:
For Each fileName In fileCollection
Set wb = eApp.Workbooks.Open(fileName)
wb.Application.Run macro_to_be_called
wb.Save
wb.Close
Debug.Print "Processed " & fileName 'Print progress on Immediate window
Next fileName
除了没有被调用的宏之外,一切都在工作。难道我做错了什么?
被调用的宏获取 ActiveWorkbook 并在 ActiveWorkbook 的某个单元格中写入一些数据。也许它在弄清楚 Activeworkbook 是什么方面存在冲突?
解决方案
推荐阅读
- java - Flink keyedStream 计数状态
- python - 如何从 Python 中的点列表中创建具有中心的椭圆体的二进制 3 维矩阵?
- javascript - 从 Angular 12 降级到 Angular 8 时出现问题
- python - 如何扩展接收范围
- mysql - 将日期转换为 dd.mm.yyy
- nginx - nginx proxy_pass - 如何处理 HTTP 303 “查看其他”
- c# - ASP.NET Core 和 RunspacePool 管道输出不起作用
- sql - Spring JPA 查询验证错误 - '(',
, FUNCTION 或标识符,得到 '(' - google-sheets - 如何在谷歌表格中自动从您的计算机上从最近下载的 csv 文件中导入数据
- python - 导入 5 个随机 .obj 文件、渲染、将图像另存为 .png、将场景另存为 .mb 并重复该过程 X 次的脚本