1

我的查询如下:

每个月,我的电信提供商都会给我一份所有订阅者的 Excel 列表,格式如下:

GSM number, account num, caller location, called location, units, cost

123456,     abc123456,   loc1,            loc2,            23,    11.231

123456,     abc123456,   loc8,            loc4,            5,     3

123456,     abc123456,   loc1,            loc4,            102,   71.1

789012,     def789012,   loc4,            loc5,            11,    1.43

789012,     def789012,   loc4,            loc5,            1,     0.23

345678,     ghi345678,   loc6,            loc7,            7,     2.23

等等..

我想遍历 A 列(gsm 编号)并将该编号的所有行复制到以该编号命名的工作表中,例如,第 1-3 行将被复制到名为 123456 的工作表中。

我已经设法通过该站点上的其他一些 查询,并提出了一些可行的方法,但没有。我面临的问题是特定调用者的行数不是固定的(每次调用一行),调用者的数量也不是固定的(零调用意味着没有行)。我正在尝试 OnCellValueChange 类型的解决方案——因为我可以理解和编辑宏——但还没有写过。

谢谢你的时间!

编辑:另外,作为旁注,我还可以在每个电子表格上放置“成本”列的总数吗?

编辑编辑:感谢大家的解决方案。然而,我对 VBA 的不适应一直困扰着我。所以,我只是在 SQL 数据库中按原样使用 Excel 表,并直接在线进行 SQL/ASP 中的所有格式化和查询。所以现在用户只需输入他们的电话号码(和密码),就可以看到他们的通话记录以及动态生成的小计和排序。谢谢你们的帮助。

4

1 回答 1

1

正如@joseph4tw 所说,您可以使用类似于下面的数据透视表(Excel 2010)来做到这一点......

  • 要显示所有项目标签,请选择:字段设置 -> 布局和打印 -> 重复项目标签

  • 要创建工作表选项卡,只需选择Pivot Table Options -> Show Report Filter Pages(如下所示)

在此处输入图像描述

在此处输入图像描述

更新创建工作表选项卡后,您可以根据需要使用组编辑来格式化...

  • 通过按住 Shift 键单击最后一个选项卡来选择所有选项卡,
  • 选择整个工作表并粘贴特殊值以删除所有数据透视表
  • 删除前两行并自动调整列,如图所示

在此处输入图像描述

于 2012-08-26T10:35:10.737 回答