Excel VBA質問箱 IV

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

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


67586 / 76738 ←次へ | 前へ→

【13706】Re:オートシェイプの削除
回答  ぴかる  - 04/5/11(火) 15:32 -

引用なし
パスワード
   こんにちは。

↓で選択したとこ、全部クリアします。お試し下さい。
以前に、りん大先生(最近ご無沙汰)に、教えてもらったものです。
ツールバーソフト、ピカつーるを紹介出来ないのが残念・・・。

Sub 全てクリア()
 
Dim Sh As Shape, r1 As Range, r2 As Range

  On Error GoTo errout
  If ActiveSheet.ProtectContents Then
  Else
   If TypeName(Selection) = "Range" Then
    Selection.Clear
    If TypeName(Selection) = "Range" Then
     If ActiveSheet.Shapes.Count > 0 Then
      For Each Sh In ActiveSheet.Shapes
       '図形が完全に範囲に含まれる場合は削除する
       '図形左上セルのチェック
       Set r1 = Application.Intersect(Selection, _
                      Sh.TopLeftCell)
       '図形右下セルのチェック
       Set r2 = Application.Intersect(Selection, _
                      Sh.BottomRightCell)
       If r1 Is Nothing Or r2 Is Nothing Then
       '左上セルまたは右下セルが選択範囲の外にある場合は無視
        '両方外にある場合も無視
       Else
        Sh.Delete
       End If
      Next
     End If
    End If
   Else
    Selection.Delete
   End If
  End If
  Set r1 = Nothing: Set r2 = Nothing

  Exit Sub
errout:

End Sub
0 hits

【13675】オートシェイプの削除 kurenai 04/5/11(火) 8:26 質問
【13676】Re:オートシェイプの削除 IROC 04/5/11(火) 8:37 回答
【13706】Re:オートシェイプの削除 ぴかる 04/5/11(火) 15:32 回答
【13725】Re:オートシェイプの削除 kurenai 04/5/12(水) 9:42 お礼

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