0

过去,我创建了从数据库中提取数据并使用表格对其进行格式化的网站。

现在,我正在尝试使用 Excel 做同样的事情,但我迷路了。我习惯于使用 SQL 命令从给定字段中提取数据,然后对其进行排序/操作。

目前,我可以打印一份报告,该报告为我提供了一个充满原始数据的 Excel 电子表格,但我想让我的生活更轻松并将其组织成一份报告。

我要引用的列包含重复项,但相邻列中的数据不同。

举个例子,假设我有一个销售交易的电子表格。一列是客户 ID,相邻的列将包含数量、每单位成本、总成本、订单 ID 等。

在这种情况下,我想做的是选择具有相同客户 ID 的所有交易,并根据他们的订单 ID 将它们加在一起。然后,我想将结果打印到第二张纸上。

我意识到我可以使用内置函数来完成此操作,但我还想使用 VBA 均匀地格式化此报告。此外,由于我将有可变数量的行从一个报告到下一个报告不同,我还没有遇到允许您添加行的函数。

我假设这必须用 VBA 完成。

4

1 回答 1

1

好吧,您可以手动完成,但这需要很长时间。所以 VBA 会很好,尤其是当您能够快速生成未来的报告时。

我对您的说法的解释是,报告中的每一行都是一个客户 ID 的总数。如果是别的东西,我想下面的内容仍然是最相关的。

我认为给你完整的答案会有点多,特别是因为你没有提供完整的细节,而是试探一下你会做什么:

  1. 创建您的空报告页面,无论是新工作表还是新工作簿

  2. 循环遍历表(可能使用 While next is not empty)

    一个。确定一行是否用于您尚未涵盖的客户 ID

    一世。如果是这样,那么在您的报告中添加一个新条目

    ii. 否则将其添加到现有的客户 ID 记录中(循环直到找到它)

  3. 格式化您的报告,使其看起来很漂亮,例如:

    一个。将背景填充为白色

    湾。加入一些实心条

    C。输入好的标题和总数等。

对于第 1 部分,最好先构建一个数组,然后将内容转储到报告中。这取决于过程的密集程度——如果非常密集,阵列应该缩短时间。

于 2012-09-20T05:37:05.270 回答