Document内のテキストボックスを一掃すること能わず……(Word)

WordのDocument上からテキストボックスを一掃できない

やたらとテキストボックスがベタベタ貼り付けられた文書に出会った。

文章をコピペしようにも、巻き添えでテキストボックスが選択されてしまうのでうっとうしいことこの上ない。

で、マクロで一掃してやろうと思って次のコードを書いた。

文書内のシェイプを一掃する(はずの)コード

リスト1 標準モジュール
Public Sub removeAllShapes()
  Dim Doc As Document
  Set Doc = ActiveDocument
  Dim shp As Word.Shape
  For Each shp In Doc.Shapes
    shp.Delete
  Next
End Sub

文書内のShapeオブジェクトを総ナメして、Deleteメソッドで抹殺。

完璧なはずだ。

実行

f:id:akashi_keirin:20190215174830j:plain

このような文書を用意して、実行してみる。

ちなみに、実行前のシェイプの数は、

f:id:akashi_keirin:20190215174834j:plain

9個。

実行してみると……。

f:id:akashi_keirin:20190215174837j:plain

ぬな!?

f:id:akashi_keirin:20190215174841j:plain

シェイプが4個も残っとるやんけ。

おわりに

なんでやねん。

追記

コメント欄と併せ、コチラもどうぞ。

akashi-keirin.hatenablog.com