VBA数组如何求和与计数

VBA数组如何求和与计数,第1张

答:Sum函数可以在工作表中求,同样也可以对VBA数组求和,如:Sub

t2()arr

=

Array(1,

35,

4,

13)

MsgBox

ApplicationSum(arr)

'对数组进行求和

End

Sub

2、Count和Counta

Count和Counta可以统计数组中数字的个数和数字+文本的个数。

MsgBox

ApplicationCount(arr)

'返回数字的个数4

MsgBox

ApplicationCountA(arr)

‘返回数组文本和数字的总个数

End

Sub

public sub 统计()

dim i as integer,n as integer

n=0

for i=1 to 12 step 1

if len(cells(i,1))>0 then

n=n+1

end if

next i

cells(1,2)=n

end

'则运行后B1单元格显示的数据即A1:A12区域数据的个数!

Sub 计数()

 Dim Arr, i&, j&, Drr(1 To 1440, 1 To 1)

 Arr = Range(Cells(1, 1), Cells(RowsCount, 1)End(xlUp))

 j = 1

 For i = 1 To UBound(Arr)

  If Arr(i, 1) > j Then

   Do

    Drr(j, 1) = i - 1

    j = j + 1

   Loop Until Arr(i, 1) <= j

   If j > 1440 Then j = 1440: Exit For

  End If

 Next i

 If Arr(UBound(Arr), 1) <= j Then Drr(j, 1) = i - 1

 [D1]Resize(UBound(Drr), 1) = Drr

End Sub

窗体不全,假设我现在要查找 符合任一机器或程序或时间的 数目,结果应该在哪里得到输出?窗体上表现不出来,现有的三个框我觉得应该都是条件输入框。

第二,机器编号、程序、时间这么长,输入想要完全匹配估计很难,要模糊匹配的话,得到结果又不准确

综上所述,我觉得应该在窗体上增加两个控件,一个用于输出统计结果,可用TEXTBOX

第二个,可以用LISTBOX 或LISTVIEW,

具体逻辑是这样

现在己有的三个TEXTBOX作为输入条件的写入框,分别在每个TEXTBOX 的KEYUP 或KEYDOWN事件内增加代码,代码的作用是查找模糊匹配的结果,并将结果添加到LISTBOX内。比如我在机器文本框内输入,V,则LISTBOX内列出所有符合条件的机器代码,以供选择;根据你的要求,可能在添加LISTBOX列表项之前加上一段判断,以提供更精确的匹配结果

然后在LISTBOX双击事件或KEYPRESS事情内写段代码,将选中的条目赋值给相应的文本框(可用LISTBOX的TAG属性来确定文本框)

最后点击统计项,根据几个条件文本框内的内容在工作表里进行查找,统计条件数量,在TEXTBOX里显示,

以上就是关于VBA数组如何求和与计数全部的内容,包括:VBA数组如何求和与计数、Excel VBA 循环统计个数、如何用VBA实现条件计数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9508341.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存