【エクセルVBA】シート上にある指定した名前の図形を削除する方法!

この記事では、VBA上で指定した名前の図形を削除する方法をご紹介していきます。

 

そんなのいつ使うんだ?と思われたと思います。

たしかにこのスキルは単体で使うことはありません。

 

このスキルは例えば処理の中で必要な図形を作成⇒名前をつけておく⇒処理が進んで必要なくなった時に削除する、という流れの中で使用するものです。

 

意外といろいろな状況で使えますのでぜひマスターしておきましょう。

※以下の記事ではこのスキルを使用しています。興味があればあわせてご覧ください。

【エクセルVBA】サイコロマクロの作り方!各目の画像を準備するだけ!

 

それではさっそくやっていきましょう!

 

スポンサーリンク

事前知識:図形の名前とは?

まずは図形の名前とはなんなのかを確認しておきましょう。

 

実はエクセルシート上にある図形にはすべて名前が付けられています。

その名前は以下の画像のように図形を選択したときに左上の窓枠に表示されています。

エクセル上で図形の名前を確認する方法

(この枠をクリックすれば名前の変更もできます。)

 

今回はVBA上でここに書いてある名前の図形を見つけて削除するという処理を実行していきます。

 

スポンサーリンク

指定した名前の図形を削除するVBAコード

それではコードの紹介に移ります。

 

今回は先ほどの絵で紹介した”楕円 1″という図形を削除してみましょう。

以下がそのコードです。

Sub test()
    del_obj_name = "楕円 1"
    For Each obj In ActiveSheet.Shapes
        If obj.Name = del_obj_name Then
            ActiveSheet.Shapes.Range(Array(del_obj_name)).Delete
        End If
    Next
End Sub

 

たったのこれだけです。

 

スポンサーリンク

サンプルコードの実行結果

それでは先ほどのコードを実行してみましょう。

 

実行前は以下のような状態です。(楕円 1の図形が存在しています。)

サンプルコード実行前の状態確認

 

それでは実行します。

VBAで指定した名前の図形を削除した結果

問題なく楕円 1だけが削除されましたね。

 

スポンサーリンク

おわりに

というわけでエクセルVBAをつかって指定した名前の図形を削除する方法をご紹介しました。

意外と使えるスキルですので、ぜひマスターしておきましょう!

 

このように、私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。

 

今は仕事中で時間がないかもしれませんが、ぜひ通勤時間中などに他の記事も読んでいただけると嬉しいです。

⇒興味をもった方は【ヒガサラ】で検索してみてください。

確実にスキルアップできるはずです。

 

最後に、この記事が役に立ったという方は、ぜひ応援よろしくお願いします。

↓ 応援ボタン

にほんブログ村 IT技術ブログ VBAへ
にほんブログ村

それではまた!

コメント

タイトルとURLをコピーしました