Excel VBA将细节汇总到汇总表
我有一个Excel工作簿,有一个详细信息表。 我想从button按下事件转换成一个总表,但我不知道如何。 这是如何设置明细表
Employee -- Item -- Amt -- Sale Date Joe Hat 10 2017-01-01 Joe Ball 04 2017-01-02 Joe Socks 06 2017-01-04 Joe Cap 11 2017-01-06
我想要总计工作表才能显示
Employee -- Total Sales Joe 31
什么VBA会实现这一目标?
可能是最简单的例子:
Option Explicit Public Sub TestMe() Range("C1") = WorksheetFunction.SumIf(Range("A1:A4"), "Joe", Range("B1:B4")) End Sub
此外,您可以尝试将WorksheetFunction中的范围设置为variables并使其变得灵活。
就像Vityatabuild议的那样,您可以简单地使用数据透视表。
select你的桌子。 在插入选项卡上,select数据透视表。
在“创build数据透视表”对话框中,您的表格范围应该已经被选中,所以只需单击“确定”即可。
在数据透视表字段窗格(右侧)中,选中Employee,然后selectAmt。 这应该把员工放在行区域和价值区域的金额。
在数据透视表结果中,将“行标签”标题重命名为“员工”和“总金额”到“总销售额”。 根据需要格式化“销售”列。 将标题添加到单元格A1。
更新数据时,单击数据透视表分析选项卡上的“刷新”button刷新数据透视表。 您也可能需要使用“更改数据源”button来增加源范围。 有时只需将Table / Range设置为Sheet1!$ A:$ D,然后单击“Employee”旁边的下拉列表,selectSort AZ和Label Filtersselect“Does Not Equal”为“(blank)”