サンプル画像
Excelマクロ塾メニュー

エクセルマクロ・VBAは慣れが肝心
最初は難しく感じるExcelのマクロとVBAですが、仕組みが理解できると徐々に使いこなせるようになってきます!
自分のペースで着実に勉強しましょう!

エクセルマクロ塾
エクセルマクロ塾

withステートメント

withステートメントとは、指定したオブジェクトに対して複数の処理を行う場合に使用するステートメントです。withステートメントを使うことによりコードを1つ1つ分けて書くことをしなくてすむためコードを見やすくできるというメリットがあります。

 

ではwithステートメントを実際に使ってみましょう。

withステートメントはVBEに書き込みます。

VBEの起動方法はエクセルを開いて上の[ ツール ] ⇒ [ マクロ ] ⇒ [ Visual Basic Editor ]をクリックします。

 

VBA Withステートメント

 

VBEが起動できたら左側のSheet1をダブルクリックします。

その後右側の白い部分にコードを記入していきます。

 

VBA Withステートメント

 

上の画像はWithステートメントを使っていない状態です。

 

指定したオブジェクト(今回はA1からC3までの範囲を1つのオブジェクトとして見ています)に対して3つの処理を行っています。

 

指定したオブジェクトは全部同じなのに、処理が3つあるためにオブジェクトも3回書き込むことになってしまっています。

 

オブジェクトが同じであるなら、1つにまとめてしまったほうが簡単ですよね。

Withステートメントを使うことによりそれが可能なので、2つ目の画像と同じ内容でコードをまとめてみましょう。

 

VBA Withステートメント

 

withステートメントでコードをまとめました。

コードの書き方としては、オブジェクトの指定を1行でまとめ、それに対する処理を連続して記入した感じです。

 

内容は2枚目の画像とまったく同じです。

書き終わったらF5キーを押してコードを実行してみましょう。

 

VBA withステートメント

 

指定したセルに3つの処理が実行されました。

 

< コードの説明 >

Value = "With"

Withと書き込みます

 

Font.ColorIndex = 3

文字色を赤色にします

 

Interior.ColorIndex = 8

セルの背景色を水色にします

 

VBA