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
Excel 合并重复行并添加数量_Excel_Vba_Duplicates_Rows - Fatal编程技术网

Excel 合并重复行并添加数量

Excel 合并重复行并添加数量,excel,vba,duplicates,rows,Excel,Vba,Duplicates,Rows,我正在使用下面的代码行。而不是我必须突出显示范围。是否有代码可以选择我的数据范围?我被粗体代码卡住了。我希望自动选择范围 Sub MyEnterEvent() Set R = Application.Selection **Set R = Application.InputBox("select one Range:", "CombineDuplicateRowsAndSum", R.Address, Type:=8)** Set Dic = CreateObject("

我正在使用下面的代码行。而不是我必须突出显示范围。是否有代码可以选择我的数据范围?我被粗体代码卡住了。我希望自动选择范围

Sub MyEnterEvent()

   Set R = Application.Selection
    **Set R = Application.InputBox("select one Range:", "CombineDuplicateRowsAndSum", R.Address, Type:=8)**
    Set Dic = CreateObject("Scripting.Dictionary")
    arr = R.Value
    For i = 1 To UBound(arr, 1)
        Dic(arr(i, 1)) = Dic(arr(i, 1)) + arr(i, 3)
    Next
    R.ClearContents
    R.Range("A1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.keys)
    R.Range("B1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.items)
    Application.ScreenUpdating = True

End Sub

如果删除该行并运行它会发生什么?或者初始选择的想法是什么?
Set r=thiswoolk.ActiveSheet.Range(“B20:C40”)
会在您写行时选择范围“B20:C40”
r.select
。这就是你想要的吗?我给你的问题贴了一个答案-也许你能告诉我它是否有效?@vityta我在使用那个代码时出错了。输入数据时,范围将发生变化。所以,我需要添加类似“Used.Range”的内容。@SJR抱歉,我看不到您的答案。