3.5.2-代码解析:S01_初始化¶
该过程的实现的功能如下:
1)清空上一次遗留的合格率信息,即清除操作界面工作表A2至C列最大行区域
2)虽然本示例只有3个按钮,但是为了防止重复点击和遗漏点击,每点击一个按钮需要做出提示,即分别在操作界面工作表K2:K4区域记录已点击。在本过程中首先将上一次操作的信息清除掉,即操作界面工作表K2:K4区域清空
3)清空数据缓存工作表
4)第1个按钮点击后在K2单元格写入已点击
代码前面的序号和 | 只是方便记录其代码行数,方便后续写代码说明,真实使用过程中无需序号和前面的 |。
代码如下
1 |Sub S01_初始化()
2 | ' 清空 工作表操作界面 上次遗留的信息
3 | Set shtFirst = ThisWorkbook.Worksheets("操作界面")
4 | maxRow = shtFirst.Cells(Rows.Count, "B").End(xlUp).Row
5 | If maxRow > 2 Then
6 | shtFirst.Range("A2:C" & maxRow).ClearContents
7 | End If
8 | shtFirst.Range("K2:K4").ClearContents
9 |
10 | '清空 工作表数据缓存 所有信息
11 | Set shtData = ThisWorkbook.Worksheets("数据缓存")
12 | shtData.Cells.ClearContents
13 |
14 | shtFirst.Range("K2") = "已点击"
15 |
16 |End Sub
以上代码的中文解析:
1 |Sub S01_初始化()
2 | ' 注释
3 | 定义工作表shtFirst,表示操作界面工作表
4 | 获取操作界面工作表B列最大行maxRow
5 | 判断开始:maxRow是否大于2:如果小于2表示该表没有数据,无需操作
6 | 操作界面工作表的A2至C列最大行区域全部清空,删除数据
7 | 判断结束:
8 | 操作界面工作表的K2至K4区域数据全部删除
9 |
10 | '注释
11 | 定义工作表shtFirst,表示数据缓存工作表
12 | 清空数据缓存工作表所有数据
13 |
14 | 操作界面工作表的K2单元格赋值"已点击"
15 |
16 |End Sub
关键代码解读
清空工作表某区域单元格的数据,构成方式:单元格区域.ClearContents,其实从英文释义也可以快速理解为清空内容。关于单元格区域本Sub中有两种方式,如下所示
shtFirst.Range(“A2:C” & maxRow).ClearContents
shtData.Cells.ClearContents
第一种是明确单元格区域Range(“A2:C” & maxRow),这种方式其实就是指定一个矩形的左上角和右下角,如图3-17所示。选择单元格区域A2至C11矩形区域,只需指定左上角及右下角位置即可
第二种指的是全表,使用表.Cells即可。
