Selection
Selectionとは、選択されたセルを表します。
Selectionはオブジェクトに対するプロパティです。つまり、Range("A1").SelectionとあればSelectionの内容は「Range("A1")」を指すことになります。
初めに、オブジェクトを選択するといったSelectionの使い方について説明します。
例: Sub セレクションテスト( )
Selection.Value = "☆"
End Sub
このように選択した範囲に指定した文字が入力されます。
これはあらかじめエクセルのワークシートで範囲を選択しておき、そこに文字(☆)が入力されるようVBEにプロシージャを作成しました。
Selectionの役割について大体にでも理解していただけたでしょうか?
マクロを作るためにコードを書いたりする中でSelectionが登場することもあります。
今回は指定したセルにある値をSelectionを使って削除するマクロを組んでみます。
1つ1つゆっくりと説明していきます。
今回の指定するセルは「A1」にします。エクセルを開いて、A1セルに文字を入力します。
A1セルに文字を入力しました。Selectionを使ったマクロを実行したときに、この文字がちゃんと消えているかが分かればいいので、A1セルに記入する文字はどんなものでも構いません。
VBAを起動します。上のメニューバーの[ ツール ] ⇒ [ マクロ ] ⇒ [ Visual Basic Editor ]を起動します。
VBEが表示されたら、初めにプロシージャを書く場所を選択します。
今回はワークシートではなく、モジュールシートです。
モジュールシートが表示されてない場合は、VBEのメニューから[ 挿入 ] ⇒ [ 標準モジュール ] を選択します。
これでモジュールシートを使う準備が整いました。
A1の値を削除するためのマクロを作成します。
内容の説明
Range("A1").Select
ここでA1セルを指定しました。
Selection.ClearContents
Selectionの内容が上に書いた「Range("A1")」になります。
コードが書き終わったら実行してみましょう。
VBEの画面でF5キーを押すか[ 実行 ]から[ Sub/ユーザーフォームの実行 ]をクリックします。
エクセルのワークシート画面に戻り、A1に記入した「test」という値が削除されていれば正しく実行されました。