Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何在VBA中按行分组,使x行中的值唯一,y行中的值相加?_Excel_Vba - Fatal编程技术网

Excel 如何在VBA中按行分组,使x行中的值唯一,y行中的值相加?

Excel 如何在VBA中按行分组,使x行中的值唯一,y行中的值相加?,excel,vba,Excel,Vba,VBA中是否有与pandas(Python)中的group by函数等效的函数?groupby函数执行以下操作 该行本质上返回每个唯一的名称,在Apples列中包含每个名称的Apples的总和。当前,我将数据添加到链接到透视表的工作表中(我使用宏刷新透视表时间),第二个工作表从透视表复制数据并将其硬粘贴。在第二张表中,我使用一些vlookups和其他函数来计算一些额外的数据。但我更喜欢按第一张工作表中的数据分组,这样我就不需要数据透视表和第二张工作表(更干净、更清晰的文件、更小的文件等)。使

VBA中是否有与pandas(Python)中的group by函数等效的函数?groupby函数执行以下操作


该行本质上返回每个唯一的名称,在Apples列中包含每个名称的Apples的总和。当前,我将数据添加到链接到透视表的工作表中(我使用宏刷新透视表时间),第二个工作表从透视表复制数据并将其硬粘贴。在第二张表中,我使用一些vlookups和其他函数来计算一些额外的数据。但我更喜欢按第一张工作表中的数据分组,这样我就不需要数据透视表和第二张工作表(更干净、更清晰的文件、更小的文件等)。

使用数据透视表。@ScottCraner感谢您的回复!对于一个简单的任务来说,pivot表感觉很麻烦。但在你看来,这是唯一的解决办法?这是最简单的。另外,您必须循环行以获得唯一列表,然后再次循环以获得总和。如果您的数据来自数据库,请执行以下操作:
select name,sum(apples)as Num from TableName group by name
@10uss来自mnieto的注释是您将使用的SQL,以从数据源获得所需的输出。如果您不熟悉所提供的查询,这听起来似乎不适用于您的数据源。Pivot表是目前为止最简单的解决方案。一旦你设置一次,你所要做的就是刷新。。。
df.groupby(['Name']).sum()