Sub GetShapeNames()

    Dim shp As Shape
    Dim ws As Worksheet
    
    Set ws = ActiveSheet
    
    For Each shp In ws.Shapes
    
        Select Case shp.Type
        
            '通常の図形(オートシェイプ)
            Case msoAutoShape
                Debug.Print shp.Name
            
            'グループ
            Case msoGroup
                Debug.Print shp.Name
            
        End Select
        
    Next shp

End Sub

Sub ChangeOneShapeText()

    Dim shp As Shape
    Dim newText As String
    
    newText = Range("A1").Value
    Set shp = ActiveSheet.Shapes("TextBox 1")
    
    If shp.TextFrame2.HasText Then
        shp.TextFrame2.TextRange.Text = newText
    End If

End Sub

Excelの 「開発 → マクロ」一覧に表示されるプロシージャには条件があります。
基本的には 「標準モジュールにある Public Sub(引数なし)」だけです。