見出し画像

シート操作する

excelvbaでシート操作する

Excel VBA でシート操作をする
 Excel VBA を使用してシート操作を行うことは、Excel の自動化に非常に役立ちます。
 シートの追加、削除、名前変更、コピー、移動など、様々な操作をプログラムで実行できます。

シート操作の基本
シートの指定方法

 シート名で指定: Worksheets("シート名") 最も一般的な方法です。シート名がわかっている場合に利用します。
 インデックス番号で指定: Sheets(インデックス番号) シートの順番で指定します。1番目が左端のシートです。
 オブジェクト名で指定: VBE のプロパティウィンドウでシートに名前を付けて、その名前で指定します。

よく使うシート操作

 シートの追加: Worksheets.Add
 シートの削除: Worksheets("シート名").Delete
 シート名の変更: Worksheets("元のシート名").Name = "新しいシート名"
 シートのコピー: Worksheets("コピー元のシート名").Copy  After:=Worksheets("コピー先のシート名")
 シートの移動: Worksheets("移動元のシート名").Move  Before:=Worksheets("移動先のシート名")

VB.Net
Sub シート操作例()
' 新しいシートを追加
Worksheets.Add After:=Worksheets(Worksheets.Count)

' シート名を変更
Worksheets(1).Name = "新しいシート"

' シートをコピー
Worksheets("新しいシート").Copy After:=Worksheets(2)

' シートを削除
Worksheets("コピーされたシート").Delete

End Sub
コードは注意してご使用ください。

より高度なシート操作
 シートの保護: Worksheets("シート名").Protect
 シートの保護解除: Worksheets("シート名").Unprotect
 シートの表示/非表示: Worksheets("シート名").Visible = xlSheetVisible (表示) / xlSheetHidden (非表示)
 シートの移動: Worksheets("シート名").Move Before:=Worksheets(1) (一番前に移動)
 シートの選択: Worksheets("シート名").Select

注意点
 シートが存在するか確認: シートが存在しない状態で操作しようとするとエラーになります。
 On Error Resume Next を使用してエラー処理を行うか、事前にシートの存在を確認する必要があります。
 アクティブシート: ActiveSheet は現在選択されているシートを表します。
 シートのインデックス: シートを追加したり削除したりすると、シートの  インデックスが変わることに注意してください。

その他
 セル範囲の操作: Range オブジェクトを使用して、セル範囲を指定して様々な操作を行うことができます。
 チャートの操作: Chart オブジェクトを使用して、チャートを操作できます。
 イベント: Worksheet_Activate などのイベントを使用して、シートがアクティブになった時などに特定の処理を実行できます。

まとめ
 Excel VBA を使用することで、Excel のシートをプログラムで操作し、作業の効率化を図ることができます。
 この記事では、シート操作の基本的な方法について解説しました。
 より高度な操作については、Excel VBA のヘルプや、様々な情報源を参考にしてみてください。

この記事が気に入ったらサポートをしてみませんか?