VBA常用技巧代码解析
VBA常用技巧
目录
VBA常用技巧 ................................................................................................................................... 1
第4章 Shape(图形)、Chart(图表)对象 .................................................................. 2
技巧1 在工作表中添加图形 ....................................................................................... 2 技巧2 导出工作表中的图片 ....................................................................................... 7 技巧3 在工作表中添加艺术字 ................................................................................... 9 技巧4 遍历工作表中的图形 ..................................................................................... 11 技巧5 移动、旋转图片 ............................................................................................. 13 技巧6 工作表中自动插入图片 ................................................................................. 14 技巧7 固定工作表中图形的位置 ............................................................................. 17 技巧8 使用VBA自动生成图表 .............................................................................. 19 技巧9 使用独立窗口显示图表 ................................................................................. 23 技巧10 导出工作表中的图表 ................................................................................... 24 技巧11 多图表制作 ................................................................................................... 25
1
VBA常用技巧代码解析
第4章 Shape(图形)、Chart(图表)对象
技巧1 在工作表中添加图形
如果需要在工作表中添加图形对象,可以使用AddShape方法,如下面的代码所示。
#001 Sub AddShape()
#002 Dim myShape As Shape #003 On Error Resume Next
#004 Sheet1.Shapes(\
#005 Set myShape = Sheet1.Shapes.AddShape(msoShapeRectangle, 40, 120, 280, 30)
#006 With myShape
#007 .Name = \
#008 With .TextFrame.Characters #009 .Text = \单击将选择Sheet2!\#010 With .Font
#011 .Name = \华文行楷\#012 .FontStyle = \常规\#013 .Size = 22 #014 .ColorIndex = 7 #015 End With #016 End With
#017 With .TextFrame
#018 .HorizontalAlignment = -4108 #019 .VerticalAlignment = -4108 #020 End With #021 .Placement = 3
2
VBA常用技巧代码解析
#022 End With #023 myShape.Select
#024 With Selection.ShapeRange #025 With .Line #026 .Weight = 1
#027 .DashStyle = msoLineSolid #028 .Style = msoLineSingle #029 .Transparency = 0 #030 .Visible = msoTrue
#031 .ForeColor.SchemeColor = 40
#032 .BackColor.RGB = RGB(255, 255, 255) #033 End With #034 With .Fill
#035 .Transparency = 0 #036 .Visible = msoTrue
#037 .ForeColor.SchemeColor = 41 #038 .OneColorGradient 1, 4, 0.23 #039 End With #040 End With
#041 Sheet1.Range(\
#042 Sheet1.Hyperlinks.Add Anchor:=myShape, Address:=\#043 SubAddress:=\选择Sheet2!\#044 Set myShape = Nothing #045 End Sub
代码解析:
AddShape过程在工作表中添加一个矩形并设置其外观等属性。 第2行代码声明变量myShape的对象类型。
第3、4行代码删除可能存在的名称为“myShape”的图形对象。
第5行代码使用AddShape方法在工作表中添加一个矩形。当该方法应用于Shapes对象时,返回一个Shape对象,该对象代表工作表中的新自选图形,语法如下:
expression.AddShape(Type, Left, Top, Width, Height)
参数expression是必需的,返回一个Shapes对象。
3
VBA常用技巧代码解析
参数Type是必需的,指定要创建的自选图形的类型。
参数Left和Top是必需的,以磅为单位给出自选图形边框左上角的位置。 参数Width和Height是必需的,以磅为单位给出自选图形边框的宽度和高度。 第7行代码将新建图形命名为“myShape”,向Shapes集合添加新的图形时,将对新添加的图形赋以默认的名称,若要为图形指定更有意义的名称,可指定其Name属性。
第8行到第16行代码为矩形添加文字,并设定其格式。
其中第8行代码使用TextFrame 属性和Characters方法返回该矩形的字符区域。应用于Shape对象的TextFrame 属性返回一个TextFrame对象,该对象包含指定图形对象的对齐和定位属性;Characters方法返回一个Characters对象,该对象代表某个图形的文本框中的字符区域,语法如下:
expression.Characters(Start, Length)
参数expression是必需的,返回一个指定文本框内Characters对象的表达式。 参数Start是可选的,表示将要返回的第一个字符,如果此参数设置为 1 或被忽略,则Characters方法会返回以第一个字符为起始字符的字符区域。
参数Length是可选的,表示要返回的字符个数。如果此参数被忽略,则Characters方法会返回该字符串的剩余部分(由Start参数指定的字符以后的所有字符)。
第9行代码为矩形添加文字,应用于Characters对象的Text属性返回或设置对象的文本,为可读写的String类型。
第10行到第15行代码设置矩形中文字的属性,应用于Characters对象Font属性返回一个Font对象,该对象代表指定对象的字体属性(字体名称、字体大小、字体颜色等),第11行代码设置字体名称,第12行代码设置字体样式,第13行代码设置字体大小,第14行代码颜色。
第17行到第20行代码设定矩形中文字的对齐方式。应用于TextFrame对象的HorizontalAlignment属性返回或设置指定对象的水平对齐方式,可为表格 1-1所示的XlHAlign常量之一。
常量 xlHAlignCenter xlHAlignCenterAcrossSelection xlHAlignDistributed xlHAlignFill xlHAlignGeneral xlHAlignJustify xlHAlignLeft xlHAlignRight 值 -4108 7 -4117 5 1 -4130 -4131 -4152 描述 居中 靠左 分散对齐 分散对齐 靠左 两端对齐 靠左 靠右 表格 1-1 HorizontalAlignment属性的XlHAlign常量
4
VBA常用技巧代码解析
应用于TextFrame对象的VerticalAlignment属性返回或设置指定对象的垂直对齐方式,可为表格 1-2所示的XlHAlign常量之一。
常量 xlVAlignCenter xlVAlignJustify xlVAlignBottom xlVAlignDistributed xlVAlignTop 值 -4108 -4130 -4107 -4117 -4160 描述 居中 两端对齐 靠下 分散对齐 靠上 表格 1-2 VerticalAlignment属性的XlHAlign常量
第21行代码设置矩形大小和位置不随单元格而变,应用于Shape对象的Placement属性返回或设置对象与所在的单元格之间的附属关系,可为表格 1-3所示的XlPlacement常量之一。
常量 xlFreeFloating xlMove xlMoveAndSize 值 3 2 1 描述 大小、位置均固定 大小固定、位置随单元格而变 大小、位置随单元格而变 表格 1-3 XlPlacement常量
第24行到第32行代码设置矩形的边框线条格式,应用于ShapeRange集合的Line属性返回一个LineFormat 对象,该对象包含指定图形的线条格式属性。
其中第26行代码设置矩形线条粗细,第27行代码设置矩形线条的虚线样式,第28行代码设置矩形填充的透明度,第29行代码设置矩形为可见,第30行代码设置矩形的前景色,第31行代码设置矩形填充背景的颜色。
第33行到第38行代码设置矩形的内部填充格式,应用于ShapeRange集合的Fill属性返回FillFormat对象,该对象包含指定的图表或图形的填充格式属性。
其中第35行代码设置矩形内部的透明度,第36行代码设置矩形内部为可见,第37行代码设置矩形内部的前景色,第38行代码将矩形内部指定填充设为单色渐变,应用于 FillFormat对象的OneColorGradient方法将指定填充设为单色渐变,语法如下:
expression.OneColorGradient(Style, Variant, Degree)
其中参数Style是必需的,底纹样式,可为表格 2-1所示的MsoGradientStyle常量之一。
常量 msoGradientDiagonalDown msoGradientDiagonalUp 值 4 3 描述 斜下 斜上 5
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Excel VBA常用技巧 第04章 shape及Chart对象在线全文阅读。
相关推荐: