分享

EXCEL VBA常用操作对象汇总(办公室职场必备)

 cjxzq 2018-05-05

导语:

在VBA中主要通过对EXCEL表格对象的值以及属性进行修改,来达到我们想要的数据处理效果,今天着重介绍一下在日常工作中常用的几个EXCEl对象。熟练掌握这几个对象后,应对一些复杂的、庞大的数据处理工作时绰绰有余了。

常用的对象有这么几个:

Workbooks对象,简单的说,我们打开一个.xls文件,就是一个Workbooks对象。

主要又这几个用法:

  • Workbooks.Open,打开文件。相当于“文件->打开”命令。用法:

  1. Workbooks.Open FileName:="D:今日头条80502Excel演示.xls"

  2. Workbooks.Open "D:今日头条80502Excel演示.xls"

EXCEL VBA常用操作对象汇总(办公室职场必备)

  • Workbooks.Add。新建一个空白的工作簿,相当于“文件->新建”命令。

EXCEL VBA常用操作对象汇总(办公室职场必备)

  • Workbooks.Save。保存文件。常用在关闭文件之前,功能和Ctrl+S 相同。

  • Workbooks.Close。关闭文件。

  1. 用法:Workbooks(1).Close SaveChanges:=False 关闭工作簿,并且不保存,改为True则是保存并关闭。

下面是打开文件,然后修改文件,并保存。

Sub 打开修改文件并保存()

Path = "D:今日头条Excel VBA 培训A计划.xls"

Workbooks.Open FileName:=Path

Sheets(1).Activate

Cells(1, 1) = "今日头条"

Cells(1, 1).Font.Name = "宋体"

ActiveWorkbook.Save

ActiveWorkbook.Close

End Sub

EXCEL VBA常用操作对象汇总(办公室职场必备)

小结,与Workbook类似的两个对象还有ThisWorkbook和ActiveWorkbook,这两个用法基本和Workbooks类似。大家经常使用就会明白了。

  • ThisWorkbook是对程序所在工作簿的引用;宏文件保存的那个文件。

  • ActiveWorkbook是对活动工作簿的引用;窗口显示的那个工作薄文件。

  • 其他补充:

  1. Workbooks.Name:返回 工作簿文件的名称

  2. Workbooks.FullName:返回 工作簿文件的文件路径+名称

  3. Workbooks.Path:返回 工作簿文件的文件路径

Worksheets对象,这个更好理解,每一个文件中的Sheet工作表。

Worksheets引用的方式有两种,a. 根据索引号(从1开始) b.根据工作表名称

Worksheets(1) 和Worksheets("Sheet1") 是等效的 (默认没有改工作表名字而且没有移动工作表顺序的情况下)。

  • Worksheets.Add:新建工作表

  1. 用法:Worksheets.Add([Before], [After], [Count], [Type])

Worksheets.Add before:=Worksheets(1), Count:=2, Type:=xlWorksheet

‘意思是在第1个表前加入两个工作表,同样的Before和After不能同时使用。

EXCEL VBA常用操作对象汇总(办公室职场必备)

  • Worksheets.Move:移动工作表

  1. 用法:Worksheets.Move([Before], [After])

Worksheets("工作表1").Move before:=Worksheets("工作表2"):将“工作表1”移动到”工作表2之前“

EXCEL VBA常用操作对象汇总(办公室职场必备)

  • Worksheets.Delete删除工作表

  1. 用法Worksheets("工作表").Delete

Worksheets("Sheet1").Delete :删除"Sheet1"表。

Application.DisplayAlerts = False '关闭提醒,删除之前需要加上这句,不如会弹出确认删除提示。

EXCEL VBA常用操作对象汇总(办公室职场必备)

  • 工作表重命名及设置标签颜色

WorkSheet(1).Name = "名称"

WorkSheet(”工作表1“).Tab.ColorIndex =colorId

EXCEL VBA常用操作对象汇总(办公室职场必备)

小结:用Sheets代替WorkSheets会有相同的效果。

比如:激活工作表

  • Sheets(1).Activate

  • Sheets("工作表 3").Activate

Range对象:选区,右键选择表格中的区域就是选区。在实际应用中,一般都是用Cells对象代替。

主要用法:

Range("1:1").Interior.ColorIndex = 3 '选中第一行

Range("A:A").Interior.ColorIndex = 4 '选中第一列

Range("B2").Interior.ColorIndex = 5 '选中B2单元格

Range("C3:E4").Interior.ColorIndex = 6 '选中两个单元格之前的区域

Range("C5:D6", "D7:F8").Interior.ColorIndex = 7 '选中两选区的之间区域

EXCEL VBA常用操作对象汇总(办公室职场必备)

通过不同的参数选定不同的区域,然后对选区内的属性赋值修改。比如设置背景颜色,边框,字体大小等等。

Range("C3:E4").Interior.ColorIndex = 6 '选中两个单元格之前的区域

也可以这样写:

Range(Cells(3,3),Cells(4,5)).Interior.ColorIndex = 6 '选中两个单元格之前的区域

小结:相比于Cells对象,Range选择的区域更丰富多样一些,但缺少灵活性。

Cells对象,单元格,表格中的每一个单元格。这个重点掌握,学会这个对象应用之后,才算是VBA入门。类似的还有Rows对象,Columns对象,列。

主要用法:

Cells(行号,列号):B3单元格在第3行第二列,表示为Cells(3,2),

Rows(行号):第二行,表示为Rows(2),

Columns(列号):C列,右边数第3列,表示为Columns(3)。

示例:

Cells(1, 2).Interior.ColorIndex = 3 'B2单元格

Cells(4, 1).Interior.ColorIndex = 6 'A4单元格

Rows(3).Interior.ColorIndex = 4 '第3行

Columns(3).Interior.ColorIndex = 5 '第3列

EXCEL VBA常用操作对象汇总(办公室职场必备)

相比于Range,Cells对象灵活更强,主要原因是可以配合循环或判断语句调整所需要修改的单元格。

比如下面的九九乘法表

EXCEL VBA常用操作对象汇总(办公室职场必备)

这几个对象是在实际应用的常用的,学会Workbook之后,可以对多个文件进行数据、格式进行修改。学会Worksheet可以同时对多个Sheet表进行修改。Range对象、Cells对象、Rows对象、Columns对象则是对要修改的位置做更精确地定位。有时还需要结合循环语句和判断语句来精确定位到我们要修改的位置。做个类比,你要给远在浙江省苏州市杨武县小河镇的铭铭家发快递。快递分拣的时候肯定分到江苏省(Workbook文件操作对象),然后是苏州市(Worksheet),然后再到镇(Range、Rows、Columns、Cells),有时还需要一些判断条件来判断是否是铭铭家。

等定位要精确位置之后,我们才开始修改我们要修改的数据。我们可以通过对象的这几个属性进行修改。

  1. Font 字体属性,字体属性又有字体大小、颜色、类型、加粗等属性;

  2. Interior属性(背景颜色属性);

  3. Borders属性(边框);

  4. HorizontalAlignment水平对齐属性;

  5. VerticalAlignment垂直对齐属性。

对象属性

属性说明

Cells Font属性

字体

字体大小

cells.font.size;

字体颜色

cells.font.color;

字体类型

cells.font.name;

字体加粗

cells.font.fontstyle;

Cells Interior属性

背景颜色

背景颜色值

cells.Interior.Color

背景颜色索引ID

cells.Interior.ColorIndex

Cells Borders属性

边框

线宽

Cells.Borders.Weight

线型

Cells.Borders.LineStyle

颜色

Cells.Borders.Color

Cells HorizontalAlignment属性

水平对齐

Cells VerticalAlignment属性

垂直对齐


比如 :

Cells(1,2).Font.name ="黑体" ‘设置B2单元格字体为黑体。

Range("A1","A10").Font.size=16 '设置选区内字体大小为16。

Rows(1).Interior.ColorIndex = 6 '设置第一行背景颜色大小为黄色。

Columns(1).HorizontalAlignment =xlVAlignCenter ’ '设置第一列垂直居中。

这些属性不知道怎么写的话可以通过宏录制,将所需的代码录制出来。

EXCEL VBA常用操作对象汇总(办公室职场必备)

这是录制出来的代码。

Sub Macro1()

Range("A1:I1").Select

'将Select这句去掉, 下面的Selection 直接换成 Cells(1,3) 或者Rows(1)等对象就可以了。

Selection.Font.Name = "华文中宋" ’字体

Selection.Font.Size = 22 ‘字体大小

Selection.Font.Bold = True’ 字体加粗

With Selection.Interior ‘背景颜色

.Pattern = xlPatternSolid

.Color = 65535

.TintAndShade = 0

End With

End Sub

修改后的代码,用同样的方式也可以录制边框和对齐属性。

Sub Macro1()

'

Rows(1).Font.Name = "华文中宋"

Rows(1).Font.Size = 22

Rows(1).Font.Bold = True

With Rows(1).Interior

.Pattern = xlPatternSolid

.Color = 65535

.TintAndShade = 0

End With

End Sub

总结:学习VBA最主要的是要多加练习,在工作中遇到实际问题,至少要知道VBA能够解决这样的问题,然后最快的学习方法就是不断的提出问题,然后百度,一点点的代码拼出来。这个过程就是知识内化的过程。一旦熟悉了这个过程,你会发现不管学什么东西都比较有效率的。

编者的话:这篇文章自己捣鼓了3天,路漫漫其修远兮!用到的代码会放到网盘里,童鞋可以自己鼓捣,加关注,私信回复“天蓝蓝”,即可得到。

打开文件后,在开发工具里面,点击VB编辑器即可打开(office自带VBA,WPS 需要安装VBA for WPS)

EXCEL VBA常用操作对象汇总(办公室职场必备)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多