Vba 如果重复,则计数重复项,与列匹配并计算总和 样本数据: 错误的伪代码: 在A列中循环检查重复项 如果发现重复,增加重复计数器并存储在阵列中 然后在C列写上“示例#” 使用计数器在B列中的行之间跳转,并对D列中的值和输出求和 英语: 将每个“示例”的所有值相加 将“示例#”输出到指定的列/行 求和值并输出到指定的列/行

Vba 如果重复,则计数重复项,与列匹配并计算总和 样本数据: 错误的伪代码: 在A列中循环检查重复项 如果发现重复,增加重复计数器并存储在阵列中 然后在C列写上“示例#” 使用计数器在B列中的行之间跳转,并对D列中的值和输出求和 英语: 将每个“示例”的所有值相加 将“示例#”输出到指定的列/行 求和值并输出到指定的列/行,vba,excel,Vba,Excel,有更简单的方法吗?由VBA(通过记录宏)创建的数据透视表: 对于示例2的结果是6,而不是8,您可以使用轴而不使用任何VBA。如果你真的想用VBA来做这件事,请同时发布你的真实代码,并解释为什么它不起作用。(在大型数据集上,pivot表总是比任何VBA代码都要快得多)。供将来参考,请参阅。请参阅和。使用固定宽度字体的代码块格式(每行开头4个空格,或使用编辑器中的{}按钮)。我理解图像的问题,Jeeped。正如aucuparia指出的,我不知道如何最好地呈现固定宽度的材料。此外,如果我在物理上搜索特

有更简单的方法吗?

由VBA(通过记录宏)创建的数据透视表:


对于
示例2
的结果是
6
,而不是
8

,您可以使用轴而不使用任何VBA。如果你真的想用VBA来做这件事,请同时发布你的真实代码,并解释为什么它不起作用。(在大型数据集上,pivot表总是比任何VBA代码都要快得多)。供将来参考,请参阅。请参阅和。使用固定宽度字体的代码块格式(每行开头4个空格,或使用编辑器中的{}按钮)。我理解图像的问题,Jeeped。正如aucuparia指出的,我不知道如何最好地呈现固定宽度的材料。此外,如果我在物理上搜索特定的查询,SumIf和CountIf也可以工作。我正试图让它根据当前添加的材料自行填充。我会把我的密码寄回去的。
Column A       Column B       Column C        Column D
Example 1      5              Example 1       13
Example 1      2              Example 2       8
Example 1      4
Example 1      2
Example 2      2
Example 2      4
Example 3      2
Sub MacroPT()
    Application.CutCopyMode = False
    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        "Sheet1!R1C1:R1048576C2", Version:=xlPivotTableVersion15).CreatePivotTable _
        TableDestination:="Sheet1!R1C3", TableName:="PivotTable1", DefaultVersion _
        :=xlPivotTableVersion15
    Sheets("Sheet1").Select
    Cells(1, 3).Select
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Column A")
        .Orientation = xlRowField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Column B")
        .Orientation = xlColumnField
        .Position = 1
    End With
    ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
        "PivotTable1").PivotFields("Column B"), "Count of Column B", xlCount
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Count of Column B")
        .Caption = "Sum of Column B"
        .Function = xlSum
    End With
    ActiveSheet.PivotTables("PivotTable1").CompactLayoutRowHeader = "Column C"
    Range("D1").Select
    ActiveSheet.PivotTables("PivotTable1").DataPivotField.PivotItems( _
        "Sum of Column B").Caption = "Column D"
    Range("C3").Select
    With ActiveSheet.PivotTables("PivotTable1")
        .ColumnGrand = False
        .RowGrand = False
    End With
End Sub