|
我附件有一个表格新生统计表,我希望在m列将不同老师的名字列出来,并在n列根据m列将相同老师j1的的数相加,目前的m列和n列是我所希望得到的结果。之前我打算是用数组公式来做的,但在实际运用用发现当我输入数据多的时候,运用数组公式的单元格多,导致表格运行十分缓慢,所以我想求得一个代码,当我输入完毕后点执行后他才会进行计算,谢谢高手师傅们的帮忙。
- Sub aaa()
- Dim arr, i&, d As Object
- Set d = CreateObject("scripting.dictionary")
- arr = Range("i1:j" & [i65536].End(3).Row)
- For i = 1 To UBound(arr)
- d(arr(i, 1)) = d(arr(i, 1)) + arr(i, 2)
- Next i
- [m1].Resize(d.Count) = Application.Transpose(d.keys)
- [n1].Resize(d.Count) = Application.Transpose(d.items)
- End Sub
复制代码
|
|