2013-07-16 22 views

回答

7

MS Word中有兩種類型的形狀:InlineShapesShapes。這是很容易檢查形狀物體的名稱與一些VBA代碼:

  1. 選擇形狀
  2. 按Alt + F11打開VBA編輯器
  3. 在即時窗口中執行此代碼:? Selection.ShapeRange.Name
  4. 結果你得到形狀的名字。

InlineShape沒有name屬性,因此你不能檢查,直到您推廣InlineShapeShape類型的對象它的名字。

+2

感謝。 Ctrl + G打開立即窗口。 – ftkg

+0

我正在尋找一種方式來引用積極選擇的形狀,這是完美的。謝謝@Kazimierz – MJA

3

Microsoft Word 2010從起(201020132016)有一個 「選擇窗格」 包括在Microsoft Word。 在選擇窗格上列出並命名了Microsoft Word InlineShapes以及Shapes

您可以找到 「選擇窗格」 菜單下

  1. 「家」 -Tab
  2. 「編輯」 -group
  3. 「選擇」 按鈕上
  4. 「選擇窗格。 ..「
+1

在這整個線程中的最佳答案:) –

0

最方便的方法是創建一個宏按鈕,它可以從您的選項卡(例如,Home,Insert等)訪問。這樣,你只需點擊形狀,點擊宏按鈕,瞧 - 形狀名稱顯示在消息框(彈出窗口)。

使用下面的代碼:

MsgBox ActiveWindow.Selection.ShapeRange(1).name 
+0

該代碼可以拋出「價值不在預期的範圍內」 – PandaWood

0

正確的答案,我希望)))

For Each ILShp In Doc.InlineShapes 
    If ILShp.Type = 5 Then   ' 5 (wdInlineShapeOLEControlObject) - OLE control object. (ComboBox and CheckBox) 
     ' if object is ComboBox 
     If CStr(ILShp.OLEFormat.ClassType) = "Forms.ComboBox.1" Then 
      Cb_Name = ILShp.OLEFormat.Object.Name   ' retuns ComboBox1 
     endif 
    Next