使用VBA + SQL Server存储过程自动执行月度报告?

时间:2017-04-17 20:40:26

标签: sql-server excel-vba stored-procedures vba excel

我正在尝试完全自动化这个过程,我想知道它在VBA中是否可行或有效。

报告过程涉及2个文件:一个sql文件和一个excel文件。

SQL文件有算法,最后一步是查询,然后将结果粘贴到excel文件中。

算法更简单(比观众可能习惯的算法)但有两个“进入”命令和几个“更新”命令。

  1. 两个“进入”命令,第一个抓住一个500米+记录表的一小部分(约束在上个月的第一天和最后一天)。第二个表将第一个表与一个资格类型表连接起来。
    1. 创建第二个表后,会有一系列更新现有列的现有数据的UPDATE命令。
    2. 然后是一系列的ALTER& UPDATE命令,用于向[second]表添加新列,并使用所需数据更新它们。
    3. 最后一步是查询谁将结果复制粘贴到excel中(因此,不需要进行格式更改)。
  2. 我不太熟悉VBA / VBNET,也不太熟悉TSQL存储过程和动态sql,如果sql算法是一个没有表创建的简单拉取查询,我可以构建一些东西来实现自动化。但SQL有2个表创建,大约有12个ALTER& UPDATE命令。

    我是否在搅拌错误的巢穴?我应该按原样手动运行吗?

1 个答案:

答案 0 :(得分:0)

你绝对可以实现自动化。我创建了一个运行两个存储过程的报告,并使用临时表创建了大量查询,包括update和alter命令,然后使用VBA运行执行这些并在最终摘要表中汇总数据。

那里有大量文件。您甚至可以在用户输入后将值传递给存储过程。

我会将此作为评论添加,但我还没有足够的声誉发表评论(需要50)。