1、VBA代码江湖中,offset函数恰似慕容复的凌波微步,实现行列间的巧妙位移;而resize函数则如孙悟空的七十二变,自由掌控单元格区域的大小缩放,二者相辅相成,让数据处理如武侠招式般行云流水;

Offset可按指定行、列偏移量定位新单元格区域。实战中能动态定位单元格,实现批量数据处理。Resize用于调整单元格区域大小,可依数据变化动态选择区域,还方便将多个相邻区域合并,利于数据汇总与分析,二者极大提升处理数据的灵活性。
(图解offset)

(图解resize)

2、例-offset偏移方法,定位工作计划表的完成日
下图是一份工作计划表,为了达到更好的可视效果。我们将根据计划天数,在计划完成日的单元格中填充颜色。(如下图)

Sub 工作计划表()
Dim r, n
For r = 2 To 10
‘循环语句,变量r将从2到10循环,第一次2、第二次3、第三次4…….
n = Sheets(“sheet4”).Cells(r, “b”).Value
‘用变量n储存储存B列中的值。
Sheets(“sheet4″).Cells(r,”b”).Offset(0, n).Interior.Color = RGB(216, 228, 188)
‘根据B列中的计划天数,在完成日期的单元格中填充颜色
Next
End Sub
3、例-resize调整大小的方法实例
G2单元格中输入名字,代码从左侧分数表中查找。把查找到的分数粘贴到右侧阅历单元格内。简单的工作虽然通过函数也能实现,但VBA远不止如此,例如跨工作簿数据引用、模糊查找、定时执行业务、定时发送邮件等复杂任务。因此简易大家在学习VBA时,秉承循序渐进的心态。

Sub find()
Dim r
’定义变量r
For r = 2 To 46
’r从2循环到46,也就是第一次r=2、第二次r=3、r=4、r=5…..
If Cells(r, “a”).Value = Cells(2, “g”).Value Then
如果分数表中的名字等于查找的名字时,执行以下命令
Cells(r, “a”).Resize(1, 5).Copy Cells(2, “g”)
‘将该行数据复制,粘贴到阅览处
End If
Next r
End Sub

(1)For next循环
VBA中使用频率极高的语法,后面会慢慢讲解。稍安勿躁…
(2)单元格底色填充(本人只用以下1种方法)
Cells(1,1). Interior.Color = RGB(216, 228, 188)
Interior:内部 color:颜色 RGB(0,0,0):颜色三基色,括号里的参数 红(red)、绿(green)、蓝(blue)。稍后将专门做一期讲解颜色相关的使用。稍安勿躁
(3)引用单元格的方法还有哪些
Application.Union 方法 (Union:连接 并集)
Select :选择
Activate:激活















暂无评论内容