我有一个非常复杂的过程,包括从不同的共享中下载多个文件,将这些文件连接到工作表中,操作和计算相关信息,然后将特定字段(和计算)作为报告导出到多个 Excel 工作簿中。
我对这个过程进行了编码,以便我可以单击一个按钮,整个过程将端到端执行。我有一系列用作“指标”的文本框(红色 - 这部分失败,绿色 - 这部分成功)。可以想象,整个过程的代码非常庞大(复制到 MSWord 时为 32 页),当我遇到问题时很难清除。
我想到我想把代码放到一个表格中,这样它就更加模块化并且更容易处理。我已经设置了一个组合框,其中包含我要执行的操作,以及第二个组合框,其中包含我要使用的报告/文件/对象(即删除 - 表 2、获取 - 文件 1、导出 - 报告 4)。我已经成功地创建了 SQL 语句来执行简单的事情,例如来自 tbl_test 的 del * 并从组合框中执行它而没有任何问题。
我需要知道的是,是否有一种方法可以将本质上是代码片段的内容放入表(备忘录字段)中,然后在我选择匹配的组合时执行该 vba 代码。
IE 'Acquire - File1' 的代码完全是 VBA 代码;它映射网络驱动器、定位文件、下载文件并将其移动到目录。
IE 'Scrub - tblMain_Part1' 的代码是 vba 和 sql 代码的组合;它检查文件是否存在 (vba),如果找到它,它会删除主表 (sql) 的一部分并附加它找到的文件 (sql) 的内容,然后更新监视器以指示它已完成(vba)。如果未找到该文件,它将监视器框更改为红色并更新命令按钮标题 (vba)
我不是 vba 的天才,但我有自己的想法。我的思考过程是,如果我基本上可以将代码分解为表中可管理的块,如果我想运行整个过程,我可以按顺序调用代码片段,或者我可以重新执行部分代码根据需要选择操作和报告/文件/对象组合。
任何想法/想法表示赞赏。