|
本帖最后由 Chrischenchen1 于 2018-8-15 17:56 编辑
老铁们,本人最近刚接触vba,最近遇到一个问题,可能是我爱钻牛角尖吧,特在此向各位请教Selection.的用法,详细的问题描述下面一步一步说,请往下看,用到的表格已作为图片插了进来。两段代码如下(已在工作表中分别关联到相应按钮上),现在问题来了:
Q1. 为何选择任何一个单一的单元格,不论是所选区域带有批注的单元格中的数字的求和还是所选区域带有批注的单元格个数的统计,全是针对整个表格[的 ?
Q2. 为何在[A1:E14]中,选取一个区域后(所选区域包含带有批注的单元格)所选区域带有批注的单元格中的数字的求和以及所选区域带有批注的单元格个数的统计,却是针对所选区域进行的?
Q3. 为何在[A1:E14]中,选取一个区域后(所选区域不包含带有批注的单元格)所选区域带有批注的单元格中的数字的求和以及所选区域带有批注的单元格个数的统计,运行结果显示为 400?
Q4. 为何在[A1:E14]之外的区域,选取一个区域后所选区域带有批注的单元格中的数字的求和以及所选区域带有批注的单元格个数的统计,运行结果显示为 400?
为了更形象地描述问题,每个问题对应的.gif也已经插入进来,请各位老铁赐教。
Sub 所选区域带有批注的单元格中的数字的求和()
Dim a%
a = Selection.Application.Sum(Selection.SpecialCells(-4144))
MsgBox "所选区域带有批注的单元格中的数字总和为:" & a
End Sub
Sub 所选区域带有批注的单元格个数的统计()
Dim k%
k = Selection.SpecialCells(-4144).Count
MsgBox "所选区域带有批注的单元格的个数为:" & k
End Sub
|
|