Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1334 / 13644 ツリー ←次へ | 前へ→

【75053】オートシェープの位置のセル座標を取得したい りった 13/11/21(木) 9:52 質問[未読]
【75054】Re:オートシェープの位置のセル座標を取得... ウッシ 13/11/21(木) 10:12 回答[未読]

【75053】オートシェープの位置のセル座標を取得し...
質問  りった  - 13/11/21(木) 9:52 -

引用なし
パスワード
   お世話になっております。

オートシェープの位置のセル座標を取得したいのですが、
可能でしょうか?
可能でしたらやり方をご教示ください。

目的:
オートシェープをたくさん使って作られた巨大な図があるのですが、
オートシェープなので検索が出来ず困っています。
オートシェープに記載された文字列を近くのセルに書き込んで(文字色=背景色)
検索できるようにしようと思っています。
(検索出来れば、別の方法でも良いです。)

私の環境は、WindowsXP Excell2003 です。

【75054】Re:オートシェープの位置のセル座標を取...
回答  ウッシ  - 13/11/21(木) 10:12 -

引用なし
パスワード
   ▼りった さん:

こんにちは

大量に有るとレスポンスが不安ですけど、

Sub test()
  Dim s As Shape
  Const 検索文字列 As String = "123"
  On Error Resume Next
  For Each s In ActiveSheet.Shapes
    If s.TextFrame.Characters.Caption Like "*" & 検索文字列 & "*" Then
      If Err.Number = 0 Then
        MsgBox s.Name
      Else
        MsgBox Err.Description & "---" & s.Name
        Err.Clear
      End If
    End If
  Next
End Sub

こんな感じで大丈夫ですか?

オートフィルタとか設定してあると、ActiveSheet.Shapes は絞込み用の三角マーク
とかも全部対象になってしまうので対処しないとダメですけど。

1334 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free