Resize快速初始化
2017-11-21 本文已影响4人
Data_Python_VBA
系统:Windows 7
软件:Excel 2010
本豆介绍使用场景or困惑:
- 清空一个表格后需要写入一些表头信息
- 传统方法就是一个单元格一个单元格填写,有没有更好的方法呢?
案例演示
1.png目标
- A1:F1单元格赋值
传统方法
Sub 示例1()
Dim sht
Set sht = ThisWorkbook.Worksheets("示例")
sht.Cells.ClearContents
sht.Range("A1") = "姓名"
sht.Range("B1") = "籍贯"
sht.Range("C1") = "语文成绩"
sht.Range("D1") = "数学成绩"
sht.Range("E1") = "化学成绩"
sht.Range("F1") = "物理成绩"
End Sub
- 采用逐个单元格赋值
- 当需要在语文成绩前增加英语成绩怎么办?
- 传统方法是从C1:G1单元格代码都得改,好麻烦
新方法
Sub 示例2()
Dim sht
Set sht = ThisWorkbook.Worksheets("示例")
sht.Cells.ClearContents
arr = Array("姓名", "籍贯", "语文成绩", "数学成绩", "化学成绩", "物理成绩")
sht.Range("A1").Resize(1, 6) = arr
End Sub
代码截图
注释
- 待初始化的数据越多,新方法的优点越明显
-
sht.Range("A1").Resize(1, 6) = arr
使用单元格区域与数组直接对等 - 若初始化数据发生变化,改变数组及
Resize(行,列)
参数即可
以上为本次的学习内容,下回见
如发现有错误,欢迎留言指出
更多精彩,请关注微信公众号
扫描二维码,关注本公众号