シートの全てのオートシェイプ、フリーフォーム、OLEオブジェクト、またはピクチャなどの描画レイヤのオブジェクト名を取得する
  アクティブになっているシートにあるオートシェイプ、フリーフォーム、
 OLEオブジェクト、またはピクチャなどの描画レイヤのオブジェクト名を
 ShapeオブジェクトのNameプロパティで取得します。

Sub Sample()

    Dim strObjName() As String
    Dim intObj As Integer
    Dim i As Integer

    'アクティブシートのShapes数をカウント
    intObj = ActiveSheet.Shapes.Count
    '配列を再宣言
    ReDim strObjName(intObj)

    '配列strObjNameにオブジェクト名を代入
    For i = 1 To intObj
        strObjName(i) = ActiveSheet.Shapes(i).Name
    Next i

    '配列strObjNameに代入されたオブジェクト名を表示
    For i = 1 To intObj
        MsgBox strObjName(i)
    Next i

End Sub




戻る


Excel Word Access VBA! モーグ