资源描述:
《用VBA在WORD中绘制图形及函数图象.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、用VBA在WORD中绘制图形及函数图象SubMacro1()用VBA在WORD中绘制图形及函数图象1.绘制一个“开关”图形'宏Switch实现在指定位置绘制一个“开关”图形。SubSwitch()ActiveDocument.Shapes.AddLine(100,110,120,110).Name="shp1"ActiveDocument.Shapes.AddShape(msoShapeOval,120,108,4,4).Name="shp2"'Oval椭圆形ActiveDocument.Shapes.AddShape(msoS
2、hapeOval,130,108,4,4).Name="shp3"ActiveDocument.Shapes.AddLine(134,110,154,110).Name="shp4"ActiveDocument.Shapes.AddLine(122,108,132,104).Name="shp5"ActiveDocument.Shapes.Range(Array("shp1","shp2","shp3","shp4","shp5")).GroupEndSub2.添加绘图画布'下列示例在新文档中添加绘图画布,然后在绘图画布上添加两
3、个图形,并设置填充和线条属性。SubAddInlineCanvas()DimdocNewAsDocumentDimshpCanvasAsShapeSetdocNew=Documents.Add'AddadrawingcanvastothenewdocumentSetshpCanvas=docNew.Shapes.AddCanvas(_Left:=150,Top:=150,Width:=70,Height:=70)shpCanvas.WrapFormat.Type=wdWrapInline'Addshapestodrawingca
4、nvasWithshpCanvas.CanvasItems.AddShapemsoShapeHeart,Left:=10,_Top:=10,Width:=50,Height:=60.AddLineBeginX:=0,BeginY:=0,_EndX:=70,EndY:=70EndWithWithshpCanvas.CanvasItems(1).Fill.ForeColor_.RGB=RGB(Red:=255,Green:=0,Blue:=0).CanvasItems(2).Line_.EndArrowheadStyle=msoAr
5、rowheadTriangleEndWithEndSub3.添加一条贝赛尔曲线本例向活动文档添加一条两段的贝塞尔曲线,并且将其定位在第二段(文档中至少要有两段,否则出错)。选择曲线,右击可编辑顶点。SubBezierCurve()DimsngArray(1To7,1To2)AsSinglesngArray(1,1)=0sngArray(1,2)=0sngArray(2,1)=72sngArray(2,2)=72sngArray(3,1)=100sngArray(3,2)=40sngArray(4,1)=20sngArray(4,
6、2)=50sngArray(5,1)=90sngArray(5,2)=120sngArray(6,1)=60sngArray(6,2)=30sngArray(7,1)=150sngArray(7,2)=90ActiveDocument.Shapes.AddCurveSafeArrayOfPoints:=sngArray,Anchor:=ActiveDocument.Paragraphs(2).RangeEndSub4.绘制正弦曲线'在Word中画正弦曲线SubDrawSin()DimiAsSingle,x1AsSingle,x2
7、AsSingle,xAsSingle,nAsSingleDimsngArray(1To100,1To2)AsSingleConstPIAsSingle=3.1415x1=0'初始角度值x2=1440'终止角度值x=1440'终初角度差n=x/360'波数Fori=1To100sngArray(i,1)=100+2*isngArray(i,2)=200-30*Sin(4*n*PI*i/200+x1)Next'添加贝塞尔曲线ActiveDocument.Shapes.AddCurveSafeArrayOfPoints:=sngArr
8、ayEndSubEndSub