EXCEL VBA Worksheet・ワークシートの取り扱い・指定・参照・追加・削除方法

EXCEL VBA Worksheet・ワークシートの取り扱い・指定方法

 

 ●はじめに
ここでは、Worksheetsの取り扱う方法やワークシートを参照するオブジェクト変数の指定方法・ワークシート名の変更方法・ワークシートの自動挿入や自動削除などの方法を説明いたします。EXCEL VBAでは、ワークシート間で集計処理や別のワークシートを参照するプルグラムを作成する事があります。ワークシート名をオフジェクト変数に指定する事により、Cells・Rangeなどを使う時に、ワークシート名をオブジェクト変数にする事で、プログラムを分かり易く記述する事ができます。

 

※オブジェクト変数とは、EXCELのブック・シート・セルなどを変数として取り扱う事を言う。

 

 

Worksheet シートをオブジェクト変数で参照設定

 ●プログラム説明(Sheet:サンプルプログラム①)
Dim 変数名 As Worksheet
Set    変数名 = オブジェクトへの参照 
下記のサンプルプログラムは、ワークシート(Sheet1~3)をオブジェクト変数(WS01~03)として設定し、各ワークシートのセル(A1)に数値を代入し、その数値の合計を算出して、合計結果をメッセージボックスに表示します。

 

 

 ●実行中 ※sheet1のA1には、100を代入・Sheet2のA1には、20を代入・Sheet3のA1には、3を代入します。(クリックして拡大)

 

 ●実行後 ※Sheet1~3のA1に代入されている値を全ての加算した結果が表示されます。(100+20+3=123) (クリックして拡大)

 

Worksheet .Nameプロパティの設定(シート名の変更)

●プログラム説明(Sheet:サンプルプログラム②)
次のプログラムは、ワークシート名を入力して、全てのシートに対してワークシート名を変更します。

 

 

 ●実行後 ※ワークシートの名前を順番に入力して変更します。(クリックして拡大)

 

 

Worksheets .Deleteプロパティの設定(ワークシートの削除・指定するワークシートの削除)

●プログラム説明(Sheet:サンプルプログラム③)
次のプログラムは、指定したワークシート名以外のシートを削除するプログラムです。

 

 

 

 

※ワークシートをマクロプログラムで削除する際に、上記の警告メッセージが表示(一時停止)されるので、下記、プログラムを追加する事で、メッセージを表示させずに、実行する事ができます。
Application.DisplayAlerts = False ‘マクロ実行中の警告メッセを止める
Application.DisplayAlerts = True ‘マクロ実行中の警告メッセージを表示(再開)させる

 

 ●実行前 ※複数のワークシートが表示されています。赤枠の指定したワークシート以外を削除します。(クリックして拡大)

 

 ●実行後 ※上記プログラムを実行した結果です。指定した「元シート・LIST」以外のシートが削除されました。(クリックして拡大)

 

Worksheets.Addプロパティの設定(ワークシートの追加・指定したシート名で追加する)

 

●プログラム説明(Sheet:サンプルプログラム④)
次のプログラムは、新たにワークシートを追加します。追加するワークシートは、ひな形となるワークシートをコピーしつつ、指定したワークシート名で追加するプログラムです。
ワークシートをコピーするひな形として「ひな形シート」をコピーしてワークシートを追加します。追加するワークシート名は、「名前リスト」シートを参照します。

 

 

 ●実行前 ※事前にひな形シートと名前リストを作成します。この内容を元に、ワークシートを追加します。(クリックして拡大)

 

 ●実行後 ※ひな形シートの内容が名前リストを元に、ワークシートが追加されました。(クリックして拡大)

 

 

●プログラム説明(Sheet:サンプルプログラム⑤)
次のプログラムは、サンプルプログラム③と④を組み合わせたプログラムになります。まず、プログラムを見てどのような処理をするのか考えて下さい。

 

最後まで、ご覧いただきまして誠に有難うございました。
以上で、Worksheet(ワークシート)に関する説明でした。EXCEL VBAでは、シートを参照する事は頻繁に発生するので、サンプルプルグラム等を参照に理解して下さい。
また、VBAに関するテクニックや便利な手法などをこのサイトに掲載していきますので、定期的に参照していただけると幸いです。