Sub 双字典统计()
Dim Rng As Range, Dic As Object, i&, Arr, Brr
Set Dic = CreateObject("ScriptingDictionary")
Arr = [A2:C12]
For i = 1 To UBound(Arr)
If Not DicExists(Arr(i, 1)) Then
Set Dic(Arr(i, 1)) = CreateObject("ScriptingDictionary")
Dic(Arr(i, 1))(Arr(i, 2)) = Arr(i, 3)
Else
Dic(Arr(i, 1))(Arr(i, 2)) = Dic(Arr(i, 1))(Arr(i, 2)) + Arr(i, 3)
End If
Next i
Set Rng = [F1]
Brr = DicKeys
For i = 0 To UBound(Brr)
RngOffset(0, i 2) = Brr(i)
RngOffset(1, i 2)Resize(Dic(Brr(i))Count, 2) = _
ApplicationWorksheetFunctionTranspose(Array(Dic(Brr(i))Keys, Dic(Brr(i))Items))
Set Dic(Brr(i)) = Nothing
Next i
Set Dic = Nothing
End Sub
可以,但是很复杂,我用excel 2003做过一个完全不显示excel表格的东东,只显示我做的界面,在界面上进行 *** 作和得出结果或将结果导出到另一张表格,换句话说就是相当于把excel当作一个后台运行的数据库使用,我估计LZ是不想让人看到表中的其他数据吧
以上就是关于excel怎么用vba编写一个这样的程序,谢谢全部的内容,包括:excel怎么用vba编写一个这样的程序,谢谢、能不能用VBA做一个放在桌面的小程序,双击后在对话框里输入数据,然后是自动保存在EXCEL的表格中、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)