Dzwebs.Net

撰写电脑技术杂文十余年

vba插入word自选图形并设置其坐标

Admin | 2013-3-14 10:56:08 | 被阅次数 | 9801

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  要想使用VBA在Word中设置自选图形的坐标,也就是自选图形的位置,那么,得使用Shapes 对象的AddShape方法。

  该对象及方法的功能及含义是:在文档中添加一个“自选图形”对象,返回一个代表该“自选图形”对象的 Shape 对象,并将其添加到 Shapes 集合。

  下面是其语法及参数介绍:

  expression.AddShape(Type, Left, Top, Width, Height, Anchor)

  expression      必需。该表达式返回一个 Shapes 对象。

  Type    Long 类型,必需。要返回的图形类型。可以是任何 MsoAutoShapeType 常量。

  Left     Single 类型,必需。“自选图形”对象左侧边缘的位置,以磅为单位。

  Top     Single 类型,必需。“自选图形”对象上部边缘的位置,以磅为单位。

  Width     Single 类型,必需。“自选图形”对象的宽度,以磅为单位。

  Height     Single 类型,必需。“自选图形”对象的高度,以磅为单位。

  Anchor     Variant 类型,可选。代表该“自选图形”所连接文本的 Range 对象。如果指定 Anchor,则锁定标记位于锁定区域第一段的起始位置。如果忽略该参数,则 Word 将自动选定锁定区域,而自选图形将相对于页面的上部和左侧边缘进行定位。

  相关的示例代码如下:

  代码一:

  Dim myShape As Word.Shape
  Set myShape = ActiveDocument.Shapes.AddShape(msoShapeRectangle, 0, 0, 100, 100, Selection.Range)
  With myShape
   .WrapFormat.Type = 3
   .ZOrder 4
  End With

  代码二:

  Dim IntPages As Integer
  Dim i As Integer
  Dim sngWidth As Single
  Dim sngHeight As Single
  Dim aShape As Shape
    With ActiveDocument
        IntPages = .ComputeStatistics(wdStatisticPages)
        sngWidth = .PageSetup.PageWidth / 2  '宽度取页宽的一半
        sngHeight = .PageSetup.PageHeight '高度为页高
    End With
   
    Application.ScreenUpdating = False
    With Selection
        Do
            i = i + 1
            .GoTo wdGoToPage, wdGoToAbsolute, i
            With ActiveDocument
                Set aShape = .Shapes.AddShape(msoShapeRectangle, 0, 0, sngWidth, sngHeight)
                With aShape
                    .Line.Visible = msoFalse
                    .Fill.Transparency = 0.7
                    .ZOrder 4
                End With
            End With
        Loop Until i = IntPages
    End With
    Application.ScreenUpdating = True


该杂文来自: Word杂文

上一篇:打开word文档提示“Word 无法启动转换器 mswrd632

下一篇:word打印书籍折页的经验技巧

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计