| 
    
     |  | ▼えいち さん: こんばんは。
 
 >過去ログに記述されていたことを見て、自分なりにがんばったのですがどうしても分かりません。教えてください。
 >
 > 1〜10行までのオートシェイブは消さずに、11行目以降のすべてのオートシェイブを消すにはどうしたらよいのでしょうか?
 >
 > うまくいった!と思ったら、10行と11行の間に圧縮されてたりで・・・
 >
 >何卒 ご教授ねがいます。
 ShapeオブジェクトのBottomRightCellを比較対象にしました。
 
 '============================================
 Sub main()
 Call del_autoshp(ActiveSheet, Rows(10))
 End Sub
 '=============================================
 Sub del_autoshp(wk As Worksheet, lim As Range)
 Dim shp As Shape
 For Each shp In wk.Shapes
 If shp.Type = msoAutoShape Then
 If shp.BottomRightCell.Row > lim.Row Then
 shp.Delete
 End If
 End If
 Next shp
 End Sub
 
 |  |