用字典比较好写:
Sub 统计()Dim i, j, arr
Dim d, k, t
Set d = CreateObject("Scripting.Dictionary")
arr = Sheets("Consolidation").Range("B2:NC129") '需要统计的数据
For i = 1 To UBound(arr,2)
For j= 1 to 128
d(arr(j, i)) = d(arr(j, i)) + 1 '遍历统计出现的次数
Next
Next
k = d.keys
t = d.items
Sheets("Sheet14").range("a1").Resize(d.Count, 1) = Application.Transpose(k) '出现的单元格值
Sheets("Sheet14").range("b1").Resize(d.Count, 1) = Application.Transpose(t) '该值出现的次数
Set d = Nothing
End Sub
accessvba提取字段的唯一值利用字典特性提取唯一值。1、在使用字典之前需要先申明这句代码可以作为固定语句来使用。
2、确定数据列最后一个非空单元格的行号。
3、将A列的公司信息存放到arr数组里。利用字典去重复值,一个公司名称只保留一个唯一值。
4、所有公司名称存放到字典中后,转置存放到单元格中。
Function DofArray(arr) As IntegerOn Error Resume Next
'判断是否数组
If Not IsArray(arr) Then
DofArray = -1
Exit Function
End If
'利用出错来判断
For i = 1 To 60
aa = UBound(arr, i)
If Err.Number <> 0 Then
DofArray = i - 1
Exit Function
End If
Next
End Function
网上有很多这样的代码的
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)