Excel_VBA常用对象

合集下载

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

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

EXCEL VBA 常用操作对象汇总(办公室职场必备)导语:在VBA 中主要通过对EXCEL 表格对象的值以及属性进行修改,来达到我们想要的数据处理效果,今天着重介绍一下在日常工作中常用的几个EXCEl 对象。

熟练掌握这几个对象后,应对一些复杂的、庞大的数据处理工作时绰绰有余了。

常用的对象有这么几个:Workbooks 对象,简单的说,我们打开一个.xls 文件,就是一个Workbooks 对象。

主要又这几个用法:Workbooks.Open, 打开文件。

相当于“文件-> 打开”命令。

用法:Workbooks.Open FileName:="D: 今日头条?80502Excel 演示.xls"Workbooks.Open "D: 今日头条?80502Excel 演示.xls"Workbooks.Add 。

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

Workbooks.Save。

保存文件。

常用在关闭文件之前,功能和Ctrl+S 相同。

Workbooks.Close 。

关闭文件。

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

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

Sub 打开修改文件并保存()Path = "D:今日头条Excel VBA 培训A计划.xls"Workbooks.OpenFileName:=PathSheets(1).ActivateCells(1, 1) = " 今日头条"Cells(1, 1) = " 宋体"ActiveWorkbook.SaveActiveWorkbook.CloseEnd Sub 小结,与Workbook 类似的两个对象还有ThisWorkbook 和ActiveWorkbook ,这两个用法基本和Workbooks 类似。

Excel_VBA编程常用实例(150例)

Excel_VBA编程常用实例(150例)

Excel_VBA编程常用实例(150例)主要内容和特点《ExcelVBA编程入门范例》主要是以一些基础而简短的VBA实例来对ExcelV BA中的常用对象及其属性和方法进行讲解,包括应用程序对象、窗口、工作簿、工作表、单元格和单元格区域、图表、数据透视表、形状、控件、菜单和工具栏、帮助助手、格式化操作、文件操作、以及常用方法和函数及技巧等方面的应用示例。

这些例子都比较基础,很容易理解,因而,很容易调试并得以实现,让您通过具体的实例来熟悉ExcelVBA编程。

■ 分16章共14个专题,以具体实例来对大多数常用的ExcelVBA对象进行讲解;■ 一般而言,每个实例都很简短,用来说明使用VBA实现Excel某一功能的操作;■ 各章内容主要是实例,即VBA代码,配以简短的说明,有些例子可能配以必要的图片,以便于理解;■ 您可以对这些实例进行扩充或组合,以实现您想要的功能或更复杂的操作。

VBE编辑器及VBA代码输入和调试的基本知识在学习这些实例的过程中,最好自已动手将它们输入到VBE编辑器中调试运行,来查看它们的结果。

当然,您可以偷赖,将它们复制/粘贴到代码编辑窗口后,进行调试运行。

下面,对VBE编辑器界面进行介绍,并对VBA代码输入和调试的基本知识进行简单的讲解。

激活VBE编辑器一般可以使用以下三种方式来打开VBE编辑器:■ 使用工作表菜单“工具——宏——Visual Basic编辑器”命令,如图00-01所示;■ 在Visual Basic工具栏上,按“Visual Basic编辑器”按钮,如图00-02所示;■ 按Alt+F11组合键。

图00-01:选择菜单“工具——宏——Visual Basic编辑器”命令来打开VBE编辑器图00-02:选择Visual Basic工具栏上的“Visual Basic编辑器”命令按钮来打开VBE编辑器此外,您也可以使用下面三种方式打开VBE编辑器:■ 在任一工作表标签上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问该工作表的代码模块,如图00-03所示;■ 在工作簿窗口左上角的Excel图标上单击鼠标右键,在弹出的菜单中选择“查看代码”,则可进入VBE编辑器访问活动工作簿的ThisWorkbook代码模块,如图00-04所示;■ 选择菜单“工具——宏——宏”命令打开宏对话框,若该工作簿中有宏程序,则单击该对话框中的“编辑”按钮即可进行VBE编辑器代码模块,如图00-05所示。

excel vba selection用法

excel vba selection用法

excel vba selection用法Excel VBA(Visual Basic for Applications)是一种强大的编程语言,可用于自动化Excel的各种操作。

其中,Selection对象是VBA中一个常用的对象,用于表示当前选定的单元格、区域或对象。

掌握Selection对象的用法能够提高数据处理和操作的效率。

本文将介绍Excel VBA中Selection对象的常见用法。

1. 基本概念在Excel中,我们经常需要对选定的单元格或区域进行操作。

Selection对象表示当前选定的单元格、区域或对象。

通过Selection对象,我们可以获得选定的内容、设置选定范围的格式、进行数据操作等。

2. 访问Selection对象要访问Selection对象,可以使用下面的语法:```Set mySelection = Selection```其中,mySelection是一个存储Selection对象的变量。

通过这个变量,我们可以操作和引用Selection对象的属性和方法。

3. 选定单元格和区域我们可以使用Selection对象来选定单个单元格或者多个连续的单元格区域。

下面是一些常见的选定操作的示例:(1)选定单个单元格```Selection.Range("A1").Select```(2)选定多个连续的单元格```Selection.Range("A1:B10").Select```(3)选定整列```Selection.EntireColumn.Select```(4)选定整行```Selection.EntireRow.Select```通过这些选定操作,我们可以快速地定位到需要处理或操作的单元格或区域。

4. 获取选定内容使用Selection对象,我们可以获取选定单元格或区域的内容、属性和位置等信息。

下面是一些示例:(1)获取选定区域的值```value = Selection.Value```(2)获取选定区域的行数```rowCount = Selection.Rows.Count```(3)获取选定区域的列数```columnCount = Selection.Columns.Count```(4)获取选定区域的左上角单元格的行号```topRow = Selection.Cells(1, 1).Row```(5) 获取选定区域的左上角单元格的列号```leftColumn = Selection.Cells(1, 1).Column```通过这些方法,我们可以获取选定区域的各种信息,并进行相应的处理。

Excel-VBA常用对象(Application、Workbook、Worksheet、。。。

Excel-VBA常用对象(Application、Workbook、Worksheet、。。。

Excel-VBA常⽤对象(Application、Workbook、Worksheet、。

⼀、对象模型在VBE中“帮助(H)”——“Microsoft Visual Basic 帮助(H) F1”——“Visual Basic 语⾔参考”——“函数” 或者在VBE下快捷键“F1”地址:https:///zh-cn/office/vba/api/overview/excel/object-model⼆、Application对象(Excel顶层对象)1、ScreenUpdating属性是否控制屏幕更新,False表⽰关闭屏幕更新,True表⽰打开屏幕更新设置ScreenUpdating=False 关闭屏幕更新,将看不到程序的执⾏过程,可以加快程序的执⾏速度,让程序显得更直观,专业。

⽰例(为关闭屏幕更新下,会弹出对话框):Sub InputTest()Cells.ClearContents '清除表中所有数据Range("A1:A10") = 100MsgBox"刚才在A1:A10输⼊数值100,你能看到结果吗?"Range("B1:B10") = 200MsgBox"刚才在B1:B10输⼊数值200,你能看到结果吗?"End Sub⽰例(关闭屏幕更新,看不到执⾏过程,程序最终执⾏完成才能看到最终结果)Sub InputTest()Cells.ClearContents '清除表中所有数据Application.ScreenUpdating = False'关闭屏幕更新Range("A1:A10") = 100MsgBox"刚才在A1:A10输⼊数值100,你能看到结果吗?"Range("B1:B10") = 200MsgBox"刚才在B1:B10输⼊数值200,你能看到结果吗?"Application.ScreenUpdating = True'恢复屏幕更新End Sub2、DisplayAlterts属性是否显⽰警告对话框,False为不显⽰,True为显⽰Sub delSht()Dim sht As WorksheetApplication.DisplayAlerts = False'不显⽰警告信息For Each sht In WorksheetsIf = Then'判断sht是不是活动⼯作表sht.Delete '删除sht代表的⼯作表End IfNextApplication.DisplayAlerts = True'恢复显⽰警告信息End Sub3、EnableEvents属性启⽤或禁⽤事件,False为禁⽤(不让事件发⽣),True为启⽤什么是事件?能被Excel认识的⼀个操作动作,例如“打开⼯作簿”、“关闭⼯作簿”等⽰例1:编写⼀个程序,当选中⼯作表的单元格时,⾃动在单元格中写⼊该单元格的地址End Sub⽰例2:选中活动单元格,记录对应单元格地址,并将活动单元格向下移动⼀个单元格Private Sub Worksheet_SelectionChange(ByVal Target As Range)Target.Value = Target.AddressApplication.EnableEvents = False'禁⽤事件Target.Offset(1, 0).Select '选中活动单元格下⾯的⼀个单元格Application.EnableEvents = True'启⽤事件End Sub4、WorksheetFunction属性使⽤WorksheetFunction调⽤Excel内置函数⽰例1:统计A1:A50单元格中数值⼤于1000的单元格有多少个?Sub CountTest()Dim mycount As Integer, rng As RangeFor Each rng In Range("A1:B50")If rng.Value > 1000Then mycount = mycount + 1NextMsgBox"A1:B50中⼤于1000的单元格个数为:" & mycountEnd Sub⽰例2:统计A1:A50单元格中数值⼤于1000的单元格有多少个?使⽤COUNTIF函数Sub CountTest()Dim mycount As Integermycount = Application.WorksheetFunction.CountIf(Range("A1:B50"), ">1000")MsgBox"A1:B50中⼤于1000的单元格个数为:" & mycountEnd Sub5、给Excel梳妆打扮Excel⼯作表界⾯相关命令Excel界⾯6、Application的常⽤属性三、Workbook对象Workbook⼯作簿Workbooks⼯作簿集合1、怎么引⽤⼯作簿引⽤⼯作簿,就是指明⼯作簿的位置及名称,共有两种⽅式⽅式⼀:利⽤索引号引⽤⼯作簿,Workbook.Item(3),这⾥的Item可以省略,即Workbook(3)⽅式⼆:利⽤⼯作簿名称引⽤,Workbook("Book1")或Workbook("Book1.xls"),如果本地⽂件显⽰拓展名(且⽂件已经保存),则⽂件名必须带拓展名,否则会报错。

EXCELVBA帮助手册Word版

EXCELVBA帮助手册Word版

Excel2003VBA 帮助文档目录一些对象的应用方法 (4)Add 方法 (5)Add方法(Dictionary) (6)Add 方法(Folders) (6)Assert 方法 (7)BuildPath 方法 (8)Clear 方法 (8)Close 方法 (9)Copy 方法 (10)CopyFile 方法 (10)CopyFolder 方法 (11)CreateFolder 方法 (12)CreateTextFile 方法 (13)Delete 方法 (14)DeleteFile 方法 (14)DeleteFolder 方法 (15)DriveExists 方法 (15)Exists 方法 (16)FileExists 方法 (16)FolderExists 方法 (17)GetAbsolutePathName 方法 (17)GetBaseName 方法 (18)GetExtensionName 方法 (18)GetFile 方法 (19)GetFileName 方法 (19)GetFolder 方法 (20)GetParentFolderName 方法 (20)GetSpecialFolder 方法 (21)GetTempName 方法 (22)Hide 方法 (22)Item 方法 (23)Items 方法 (24)Keys方法 (24)Move 方法 (25)Move 方法(UseForm) (25)1、应用于 (25)2、请参阅 (25)MoveFile 方法 (25)MoveFolder 方法 (26)OpenAsTextStream 方法 (27)OpenTextFile 方法 (28)Print 方法 (30)PrintForm 方法 (31)Raise 方法 (31)Read 方法 (33)ReadAll 方法 (33)ReadLine 方法 (34)Remove 方法 (34)Remove 方法(FileSystemObject 对象) (35)RemoveAll 方法 (35)Show 方法 (36)Skip 方法 (37)SkipLine 方法 (37)WhatsThisMode 方法 (38)Write 方法 (38)WriteBlankLines 方法 (39)WriteLine 方法 (39)一些对象的应用方法1、Collection 对象⑴ADD 方法、⑵Item 方法、⑶Remove 方法2、Debug 对象⑴Assert 方法、⑵Print 方法3、Dictionary对象⑴Add方法(Dictionary)、⑵Exists 方法、⑶Items 方法、⑷Keys方法、⑸Remove 方法、⑹Remove 方法(FileSystemObject 对象)、⑺RemoveAll 方法、4、Err 对象⑴Clear 方法、⑵Raise 方法5、File 对象、Folder 对象⑴Copy 方法、⑵Delete 方法、⑶CreateTextFile 方法(Folder 对象)、⑷Move 方法、⑸OpenAsTextStream 方法(File 对象)6、Folders集合⑴Add 方法(Folders)7、FileSystemObject 对象⑴BuildPath 方法、⑵CopyFile 方法、⑶CopyFolder 方法、⑷CreateFolder 方法、⑸CreateTextFile 方法、⑹DeleteFile 方法、⑺DeleteFolder 方法、⑻DriveExists 方法、⑼FileExists 方法、⑽GetAbsolutePathName 方法、⑾GetBaseName 方法、⑿GetExtensionName 方法、⒀GetFile 方法、⒁GetFileName 方法、⒂GetFolder 方法、⒃GetParentFolderName 方法、⒄GetSpecialFolder 方法、⒅GetTempName 方法、⒆MoveFile 方法、⒇MoveFolder 方法、(21)OpenTextFile 方法8、UserForm 对象,UserForms 集合对象⑴Hide 方法、⑵PrintForm 方法、⑶Show 方法、⑷WhatsThisMode 方法9、TextStream 对象⑴Close 方法、⑵Read 方法、⑶ReadAll 方法、⑷ReadLine 方法、⑸Skip 方法、⑹SkipLine 方法、⑺Write 方法、⑻WriteBlankLines 方法、⑼WriteLine 方法Add 方法添加一个成员到Collection对象。

Excel VBA对象属性大全

Excel VBA对象属性大全

第4章Range(单元格)对象选取单元格[A1].Select[A1:D8].Select[A1:D8,A20:C25,F6:G10].Select[A:A].Select[A:D].Select[A:A,C:C,H:H].Select[1:1].Select[5:20].Select[1:1,3:3,5:5].SelectCells.Select选取与某值不同的单元格S heets(1).Columns("A").ColumnDifferences(Comparison:合并单元格区域Union(Range("A1:B10"),Range("D1:E10"),Range("G1:G10"))Range(Range("A1:B10"),Range("D1:E10"),Range("G1:G10"))活动单元格ActiveCell已用的单元格edRange空行围成的单元格[a1].CurrentRegion.Rows.Cells可视单元格区域ActiveWindow.VisibleRange公式引用的单元格[a1].PrecedentsApplication.Evaluate([a1].Formula)从属单元格[a1].Dependents特殊单元格选取Activesheet.cells.SpecialCells(x,y).Selectx为:xlCellTypeAllFormatConditionsxlCellTypeAllValidationxlCellTypeBlanksxlCellTypeCommentsxlCellTypeLastCellxlCellTypeVisible可见xlCellTypeSameFormatConditionsxlCellTypeSameValidationxlCellTypeConstantsxlCellTypeFormulas当x为xlCellTypeConstants或xlCellTypeFormulas时y为:xlErrorxlLogicalxlNumbersxlTextValues偏移单元格[a1].Offset(x,y)调整单元格Resize(x,y)单元格总数Sheet(1).Cells.CountA列最后非空一行Range("A65536").End(xlUp).Row第一行最后非空一列Range("IV1").End(xlToLeft).Column隐藏行列[a1].EntireRow.Hidden=True/False[a1].EntireColumn.Hidden=True/FalseRows(1).Hidden=True/FalseColumns(1).Hidden=True/FalseRows.Hidden=True/FalseCells.Rows.Hidden=True/FalseColumns.Hidden=True/False设置行高列宽[A1].RowHeight=n[A1].ColumnWidth=n设置列宽行高(厘米)Application.CentimetersToPoints(1)Application.CentimetersToPoints(2)设置列宽行高(英寸)Application.InchesToPoints(1)Application.InchesToPoints(0.5)自动调整单元格[A1].EntireColumn.AutoFit[A1].EntireRow.AutoFit设置滚动区域Sheets(1).ScrollArea=[a1]Sheets(1).ScrollArea=""输入公式[a1].Formula="=TODAY()"是否有公式单元格[a1].HasFormula=True/False是否有数组公式单元格[a1].HasArray=True/False设置为数组公式[A1].FormulaArray="数组公式"单元格引用样式[A1].Address[A1].Address(False,False)[A1].Address(RowAbsolute:=False)[A1].Address(ColumnAbsolute:=False)[A1].Address(ReferenceStyle:=xlR1C1)[A1].Address(False,False,ReferenceStyle:=xlR1C1)[A1].Address(RowAbsolute:=False,ReferenceStyle:=xlR1C1)[A1].Address(ColumnAbsolute:=False,ReferenceStyle:=x单元格剪切[A1].CutDestination:=[b1]单元格复制[A1].CopyDestination:=[b1][A1].Copy[b1]将单元格复制成图片[A1].CopyPicturexlScreen,xlBitmap[B1].Select[B1].Parent.Pictures.Paste选择性粘贴[A1].Copy[B1].PasteSpecialPaste:=x,Operation:=y,SkipBlanks:=True/Falsex为:xlPasteAllxlPasteAllExceptBordersxlPasteColumnWidthsxlPasteCommentsxlPasteFormatsxlPasteFormulasxlPasteFormulasAndNumberFormatsxlPasteValidationxlPasteValuesxlPasteValuesAndNumberFormatsy为:xlPasteSpecialOperationNonexlPasteSpecialOperationAddxlPasteSpecialOperationSubtractxlPasteSpecialOperationMultiplyxlPasteSpecialOperationDivide插入行列[A1].InsertShift:=xlToRight[A1].InsertShift:=xlDown[A1].EntireRow.InsertShift:=xlShiftDown[A1].EntireColumn.InsertShift:=xlShiftToRight删除行列[A1].DeleteShift:=xlUp[A1].DeleteShift:=xlToLeft[A1].EntireRow.DeleteShift:=xlUp[A1].EntireColumn.DeleteShift:=xlToLeft清除单元格[A1].ClearFormats[A1].ClearContents[A1].ClearComments[A1].ClearNotes[A1].Clear拼音指南[a1]="拼音"[a1].Characters(1,3).PhoneticCharacters="pinyin"[a1].Phonetic.Visible=True批注设置With[a1].Comment.Delete.AddComment.Text/"批注内容".Comment.Visible=False.Comment.TextText:="插入内容",Start:=1,EndWith[a1].NoteText超链接设置Sheets(1).Hyperlinks.DeleteSheets(1).Hyperlinks.AddAnchor:=[a1],Address:="",Sheets(1).Hyperlinks.AddAnchor:=[a1],Address:="路径",ScreenTi 数据有效性设置[a1].Validation.AddType:=x,AlertStyle:=_xlValidAlertStop,Operator:=y,Formula1:="100"x为:xlValidateWholeNumberxlValidateDecimalxlValidateDatexlValidateTimexlValidateTextLengthxlValidateListy=xlEqual,Formula1:="1,2,3,4,5,6,7,8,9,10,11,12"y=xlBetween,Formula1:="=$D$1:$D$10"y为:xlBetween后面加:Formul2:="1000"xlGreaterxlLessxlGreaterEqualxlLessEqualxlNotEqualxlEqual.IgnoreBlank=True.InCellDropdown=True.InputTitle="整数".ErrorTitle="数据错误".InputMessage="请输入整数".ErrorMessage="数据超出了范围".IMEMode=xlIMEModeOff.ShowInput=True.ShowError=True单元格填充设置[A1:A20].Cells(1).Value=x[A1:A20].Cells(1).AutoFillDestination:=[A1:A20],Type:=yy为:xlFillDaysx为日期型xlFillFormatsxlFillSeriesx为数值/公式xlFillWeekdaysx为日期型xlGrowthTrendxlFillCopyxlFillDefaultxlFillMonthsx为日期型xlFillValuesx为数值/公式xlFillYearsx为日期型xlLinearTrend单元格数字设置[a1].NumberFormatLocal=xx为:G/通用格式0_#,##0.00_);[红色](#,##0.00)yyyy-m-dh:mm:ss# ?/?##0.0E+0@[DBNum1][$-804]G/通用格式[DBNum2][$-804]G/通用格式单元格对齐设置[A1].HorizontalAlignment=xx为:xlHAlignLeftxlHAlignRightxlHAlignCenterxlHAlignFillxlHAlignCenterAcrossSelectionxlHAlignDistributedxlHAlignGeneralxlHAlignJustify[A1].VerticalAlignment=xx为:xlVAlignCenterxlVAlignJustifyxlVAlignBottomxlVAlignDistributedxlVAlignTop[A1].Orientation=0°~360°[A1].AddIndent=True[A1].WrapText=True[A1].ShrinkToFit=True[a1:a2].Merge[a1:a2].UnMerge[a1].MergeCells=True单元格字体设置[a1]字体名称#VALUE![a1].Font.Size=n[a1].Font.ColorIndex=n[a1].Font.Underline=xx为:xlUnderlineStyleNonexlUnderlineStyleSinglexlUnderlineStyleDoublexlUnderlineStyleSingleAccountingxlUnderlineStyleDoubleAccounting[a1].Font.Strikethrough=True/False[a1].Font.Subscript=True/False[a1].Font.Superscript=True/False 单元格边框设置[a1].Borders(x).ColorIndex=n[a1].Borders(x).LineStyle=y[a1].Borders(x).Weight=zx为:xlEdgeTopxlEdgeBottomxlEdgeLeftxlEdgeRightxlDiagonalDownxlDiagonalUpxlInsideHorizontalxlInsideVerticaly为:xlContinuousxlDoublexlDashxlDashDotxlDashDotDotxlDotxlSlantDashDotxlLineStyleNonez为:xlHairlinexlThinxlMediumxlThick单元格图案设置[a1].Interior.ColorIndex=n[a1].Interior.Pattern=n[a1].Interior.PatternColorIndex=n 单元格保护设置[a1].Locked=True/False[a1].FormulaHidden=True/Falseison:=Sheets(1).[A1]).Select nge("G1:G10"))nge("G1:G10"))ulas时y为:=xlR1C1)le:=xlR1C1)ks:=True/False,Transpose:=True/False路径",ScreenTip:="屏幕文字提示",Type:=y。

Excel_VBA_详细教程

Excel_VBA_详细教程

Excel VBA 详细教程目录第一章 Excel VBA 简明语言之基础第一节标识符第二节运算符第三节数据类型第四节变量与常量第五节数组使用第六节注释和赋值语句第七节书写规范第八节条件语句第九节循环语句第十节其他类语句和错误语句处理第十一节过程和函数第十二节内部函数第二章 Excel VBA常用对象之使用第一节文件的操作1) Excel文件2) 文本文件3) Access文件4) 文件其它操作第二节工作表操作1) 新建与删除2) 隐藏与显示3) 锁定与保护第三节单元格操作1) 如何引用单元格和区域2) 如何处理单元格和区域3) 单元格和区域的定位 4)单元格和区域的保护与锁定第四节图表的操作1) 新建及类型2) 设置图表的数据3) 图表格式设置4) 散点图增加系列和文字5) 实例第三章 Excel VBA高级使用第一节 Win API的使用1) 堀明API函数2) 使用API函数3) 堀明补充说明4) 实例第二节 Excel VBA程序的保密1) 使用动态连接库DLL2) 获得硬盘物理地址3) 加密与注册第四章 Excel VBA优化及结束语第一节 Excel VBA优化第二节结束语附录I Excel VBA对象框架图第一章 VBA语言基础第一节标识符一.定义标识符是一种标识变量、常量、过程、函数、类等语言构成单位的符号,利用它可以完成对变量、常量、过程、函数、类等的引用。

二.命名规则1)字母打头,由字母、数字和下划线组成,如 A987b_23Abc2)字符长度小于 40,(Excel2002以上中文版等,可以用汉字且长度可达 254个字符)3)不能与 VB保留关键字重名,如 public, private, dim, goto, next, with, integer, single等第二节运算符定义:运算符是代表 VB某种运算功能的符号。

1)赋值运算符=2)数学运算符&、 + (字符连接符 )、 +(加)、-(减)、 Mod(取余)、 \(整除)、*(乘)、/(除)、-(负号)、^(指数)3)逻辑运算符 Not(非)、 And(与)、 Or(或)、 Xor(异或)、 Eqv(相等)、 Imp(隐含)4)关系运算符= (相同)、 <>(不等)、>(大于)、<(小于)、 >=(不小于)、 <=(不大于)、 Like、 Is5)位运算符Not(逻辑非)、 And(逻辑与)、 Or(逻辑或)、 Xor(逻辑异或)、 Eqv(逻辑等)、 Imp(隐含)第三节数据类型VBA共有12种数据类型,具体见下表,此外用户还可以根据以下类型用 Type自定义数据类型。

Excel VBA编程 常用图表对象方法

Excel VBA编程  常用图表对象方法

Excel VBA编程常用图表对象方法使用图表对象方法,可以为图表上的坐标轴添加标题;以及可以通过使用方法来设置图表对象的格式。

本节主要介绍一些常用的图表对象方法的使用。

1.Axes方法Axes方法返回表示图表上单个坐标轴或坐标轴集合的某个对象,其语法为:expression.Axes (Type, AxisGroup)其中,在该方法中包含以下几个参数,其功能如下:●expression 该表达式返回“应用于”列表中的一个对象。

●Type 指定返回的坐标轴和公式的引用样式。

●AxisGroup 指定公式的引用样式。

例如,使用以下代码为分类轴添加坐标轴标签。

With Charts(1).Axes(xlCategory).HasTitle = True.AxisTitle.Text = "姓名"End With2.ChartWizard方法ChartWizard方法可以修改给定图表的属性,可以使用本方法快速设置图表的格式,而不必逐个设置所有属性。

语法:表达式.ChartWizard(Source, Gallery, Format, PlotBy, CategoryLabels, SeriesLabels, HasLegend, Title, CategoryTitle, ValueTitle, ExtraTitle)在该方法中,主要包含以下几个参数,其功能如表17-2所示。

表17-2 ChartWizard方法中参数功能提示上述表格中的参数均为可选参数。

但是,如果省略参数Source,并且选定内容不是活动工作表中的嵌入图表或者活动工作表中不包含图表,则该方法失效并产生错误。

例如,重新设置Chart1的格式,将其改为折线图,添加图例,并添加分类轴标题和数值轴标题,其代码如下:Charts("Chart1").ChartWizard _Gallery:=xlLine, _HasLegend:=True, CategoryTitle:="Year", ValueTitle:="Sales"3.Export 方法Export 方法以图形格式导出图表。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


引用交叉(公共)区域

Intersect(Range("B5:D10"),Range("A1:C9"))

可以有多个Range型参数
引用特殊区域(二)

引用当前区域

Range("B1").CurrentRegion

当前区域是以空行和空列围成的区域 任何一个区域都有自己所属的当前区域

引用已用区域
叧能用于活动工作表
引用当前选区

ActiveCell.CurrentRegion
引用偏移区域

Range("B5:D10").Offset(2,1)
引用C7:E12,偏移地址可正可负,默认为0,偏移地
址先行后列
引用命名区域
引用命名区域
将当前工作表中名为“AA”的单元格区域内容设置 为30。
Workbook对象和 Workbooks集合

例4:新建工作表
Sub 新建工作表1() Worksheets.Add before:=Sheet1 End Sub
Sub 新建工作表2() Worksheets.Add after:=Sheet4, Count:=2 End Sub

Count 可选。要新建的工作表的数目。默认值为 1。
地址为字符串,可行循环,但书写麻烦
Cells(5, "B")
先行后列,行地址为数字,列地址为字符串,无法引
用区域

Cells(5,2)
地址为数字,先行后列,行列都可循环,无法引用
区域
引用一个区域
举例:引用区域B5:D10


[B5:D10]
地址用冒号连接
Range("B5:D10") Range("B5", "D10")

Workbook对象和 Workbooks集合

Workbooks.Add 方法:新建工作簿,新建的工作簿 将成为活动工作簿。

Workbooks.Open 方法 :打开一个工作簿

Workbooks.Close 方法:关闭对象
Workbook对象和 Workbooks集合

例1 创建一个新的工作簿。
Application.Caption="My Application" Application.Caption="Microsoft Excel” ?Application.Path
Excel Application.Quit
Application 对象

ActiveSheet 属性 返回活动工作表。如果没有活动的工作表,则返回 Nothing。 Sub 活动工作表() Debug.Print "当前活动工作表是:"; End Sub
Excel VBA
怎样引用区域
目录
●引用一个单元格 ●引用一个区域 ●引用整行 ●引用整列 ●引用所有单元格 ●引用相对位置单元格 ●引用特殊区域(一) ●引用特殊区域(二) ●引用特殊区域(三)
引用一个单元格
举例:引用单元格B5


[B5]
直接写地址,没有引号,无法循环
Range("B5")

利用Rows(行)集合
举例:引用第一到第三行
[1:3] Range("1:3") Rows("1:3")

引用整列
举例:引用A列(第一列)
[A:A] Range("A:A") Columns(1)

利用Columns(列)集合

Columns("A")
举例:引用A到C列(第一到第三列)

Worksheet 对象:代表一个工作表 Worksheets 对象:指定的或活动工作簿中所有 Worksheet 对象的集合 常用属性


Worksheet.Cells 属性 :返回一个 Range 对象,它代 表工作表中的所有单元格(丌仅仅是当前使用的单元 格)。

Worksheet.Columns 属性:返回一个 Range 对象, 它代表活动工作表中的所有列

引用所有行

Rows

利用Rows(行)集合

引用所有列

Columns

利用Columns(列)集合
引用特殊区域(一)

引用多个区域

[B5:D10, A1:C9]

可以多个区域
Range("B5:D10, A1:C9,…")

逗号在引号内部
可以有多个Range型参数
Union(Range("B5:D10"),Range("A1:C9"))

edRange

丌仅包括有数据的区域,还包括曾经用过的区域 以所有用过区域的中最上行最左列和最下行最右列围成 一个工作表叧有一个用过区域 如果没有用过任何单元格,则已用区域为A1单元格
引用特殊区域(三)
引用活动单元格

Range("B5").Activate
单元格和区域的操作

求数据区末尾列号: c = Range("A1").End(xlToRight).Column '求A1单元格数据区末尾列号 c = Cells(1, 1).End(xlToRight).Column '求A1单元格数据区末尾列号 c = Cells(1, 256).End(xlToLeft).Column '求第1行数据区末尾列号 c = Rows(1).End(xlToRight).Column '求第1行数据区末尾列号
Workbook对象和 Workbooks集合

例5:保存工作表 Sub 保存工作表() ActiveWorkbook.SaveAs Filename:="D:\第一个 保存工作表.xlsx" End Sub
Workbook对象和 Workbooks集合

例6:重命名工作表 Sub 重命名工作表() Sheets(1).Select Sheets(1).Name = "hello" End Sub
4
使用Application对象
VBA操作 获取当前应用程序名称 立即窗口输入 ?
将 Excel 应用 程 序 标 题 改 为“My Application” 将 Excel 应用 程 序 标 题 改 回为“Microsoft Excel” 获取Excel.exe保存的文件 夹路径 退出
Set <变量或属性名> = {[New] <对象表达式>|Nothing}
Workbook对象和 Workbooks集合

例2 打开工作簿用Open方法: Workbooks.Open (“D:\Test.xls”) 即打开D盘根目录中的Test.xls 工作簿。
Worksheet对象和 Worksheets集合
Workbook对象和 Workbooks集合

例7:复制和删除工作表 Sub 复制和删除工作表() Sheets(1).Name = "原始表" Sheets("原始表").Copy before:=Sheets("原始表") Sheets(1).Name = "副本1" Sheets("原始表").Delete End Sub
Workbooks.Add

由 Add 方法返回的Workbook 对象分配给对象变量 NewBook。然后,对 NewBook进行操作。
Set NewBook = Workbooks.Add
NewBook.SaveAs Filename:="Test.xls"

Set语句语法形式:
New创建对象的一个新实例。 Nothing释放该对象资源。

Worksheets.Delete 方法:删除对象
Worksheets(工作表).Activate方法:激活工作表
Workbook对象和 Workbooks集合

例3 激活工作表(激活工作簿中的Sheet1工作表) Worksheets("Sheet1").Activate 或 Worksheets(1).Activate
属性:返回或设置一个 String 值, 它代表对象的名称

Worksheet对象和 Worksheets集合

常用方法:

Worksheets.Add 方法:新建工作表。新建的工作表 将成为活动工作表

Worksheets.Copy 方法:将工作表复制到工作簿的另
一位置
[AA].Value = 30
相对引用区域
相对引用

将位于活动工作表上活动单元格下1行和右3列 的单元格设置为双下划线格式。 ActiveCell.Offset(1, 3).Font.Underline = xlDouble
单元格和区域的操作

求数据区末尾行号: r = Range("A1").End(xlDown).Row '求A1单元格数据区末尾行号 r = Cells(1, 1).End(xlDown).Row '求A1单元格数据区末尾行号 r = Range("A65536").End(xlUp).Row '求A列数据区末尾行号 r = Cells(65536, 1).End(xlUp).Row '求A列数据区末尾行号 r = Columns(1).End(xlDown).Row ‘求A列数据区末尾行号
相关文档
最新文档