シートの操作
・シートを挿入する
・シートを削除する
・シートに関連する基本的な操作
【ここでのポイント】
頻繁というより、必ず何らかの形でシート操作が必要になります。
しかし、シートの操作自体は極めて簡単なものなので、他の事と合わせて出題されることも予想されます。
つまり、応用的な使い方を問われる可能性もあるのではないかという事です。
ここの内容は、全ての項目について漏れることのないように学んでください。
シートを挿入する
シートを挿入するには、
Worksheetsコレクション
または、
Sheetsコレクション
のAddメソッドを使います。
ワークシート以外のシートを含むかどうかになります。
Sheetsコレクションは、全てのシート(グラフシート等を含む)のコレクションです。
Before | 指定したシートの直前に、新しい シートを追加します。 | ||||||||||
After | 指定したシートの直後に、新しいシートを追加します。 | ||||||||||
Count | 追加するシートの数を指定します。既定値は 1 です。 | ||||||||||
Type | ワークシートの種類を指定します。 既定値は xlWorksheet です。
|
戻り値
Before、After
Count
複数シートを追加する場合でも、1シートづつ追加するようにした方が良いでしょう。
使用例.
シートを削除する
Worksheetオブジェクト
のDeleteメソッドを使います。
Worksheets("シート名")
オブジェクト変数(Worksheet型)
等になります。
使用例.
以下のメッセージが表示され、マクロが中断します。

Worksheets(1).Delete
Worksheets(1).Deleteより前に実行されれば、場所はどこでも大丈夫です。
シートに関連する基本的な操作
シートの名前変更
Sheets(インデックス)
Worksheets("シート名")
オブジェクト変数(Worksheet型)
等々になります。
使用例.
公式テキストでは、同一シート名があるかについて、かなりのスペースを割いていますが、
以下のVBAコードが読めれば大丈夫でしょう。
Dim i As Long
For i = 1 To Worksheets.Count
If Worksheets(i).Name = "test" Then
MsgBox "testシートは存在します。"
Exit For
End If
Next
コピー・移動
移動
Worksheets("シート名")
オブジェクト変数(Worksheet型)
等になります。
Before | コピーしたシートを特定のシートの直前の位置に挿入するときに、そのシートを指定します。 ただし、引数 After を指定すると、引数 Before を指定することはできません。 |
After | コピーしたシートを特定のシートの直後の位置に挿入するときに、そのシートを指定します。 ただし、引数 Before を指定すると、引数 After を指定することはできません。 |
備考
使用例.
シートの非表示
xlSheetHidden | ユーザーがメニューで再表示できるワークシートを非表示にします。 |
xlSheetVeryHidden | オブジェクトは非表示になります。 このプロパティに再び xlSheetVisible を設定しない限り、オブジェクトは表示されません。 また、ユーザー側でオブジェクトを表示することはできません。 |
xlSheetVisible | シートを表示します。 |
xlSheetHidden
xlSheetVeryHidden
ユーザーに、絶対に触れてほしくないシートの場合に使用します。
xlSheetHiddenまたはxlSheetVisibleに設定する必要があります。
注意
使用例
ThisWorkbook.Unprotect
Worksheets(1).Visible = xlSheetVisible
ThisWorkbook.Protect
ブックの保護を解除してから、
シートを表示し、
またブックを保護に戻しています。
以下は、出題範囲に明記されていませんが、
この章で学んでおいた方が良いと思われるものになります。
WorkSheetオブジェクトのメソッドとプロパティ
WorkSheetオブジェクトには、多数のメソッドとプロパティがあります。
どのくらい沢山あるかを知る意味で、一度見るだけは見ておくと良いでしょう。
それは、印刷です。
印刷自体は、WorkSheetオブジェクトだけにあるものではありませんが、
普通に考えて、印刷する時はシートをしていして印刷することがほとんどなはずです。
印刷と、印刷プレビューについては、一通り目を通しておいてください。
試験の出題としては、
PrintOutメソッドのPreview指定と、PrintPreviewメソッド
どちらでもプレビューできるという事は押さえておいた方が良いでしょう。
【業務改善の実務】
と言いますか、その為にマクロを書いているといっても良いでしょう。
その為に、試験に受かっても実務で使えないという事の原因にもなっています。
このあたりは、試験としては出しづらい内容なのですが、
実務では必須になりますので、必ず学んでおいてください。
【本サイト内の関連ページ】
第17回.セルにブック・シートを指定する
シートの追加・削除(Add,Delete)
VBAエキスパート公式テキスト
こちらは必須として購入した方が良いでしょう。
ちょっと高いなーとは思いますが、
書籍を購入することで、学習用データが提供されています。
・サンプルブック
・VBAエキスパート模擬問題
これらが使えるようになります。
このシリーズでは、テキストを読みながら学習していることを前提とします。
同じテーマ「VBAエキスパート対策」の記事
セルの操作
ステートメント
ブックの操作
シートの操作
デバッグデの基礎
マクロの実行
VBAベーシック試験対策まとめ
プロシージャ
イベント
ステートメント(スタンダード)
関数
新着記事NEW ・・・新着記事一覧を見る
新旧マスタの差異比較|Power Query(M言語)入門(2023-02-28)
有効な最新単価の取得|Power Query(M言語)入門(2023-02-26)
有効な最新単価の取得|Power Query(M言語)入門(2023-02-21)
グルーブ内の最小・最大|Power Query(M言語)入門(2023-02-17)
2つのテーブルのマージ|Power Query(M言語)入門(2023-02-15)
「売上」が数値の行のみ取り込む|Power Query(M言語)入門(2023-02-13)
A列のヘッダー名を変更する|Power Query(M言語)入門(2023-02-11)
CSVのA列が日付の行だけを取り込む|Power Query(M言語)入門(2023-02-10)
列数不定のCSVの取り込み|Power Query(M言語)入門(2023-02-09)
別ブックの最終シートの取り込み|Power Query(M言語)入門(2023-02-08)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.マクロって何?VBAって何?|VBA入門
7.並べ替え(Sort)|VBA入門
8.Excelショートカットキー一覧|Excelリファレンス
9.エクセルVBAでのシート指定方法|VBA技術解説
10.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
- ホーム
- マクロVBA入門編
- VBAエキスパート対策
- シートの操作
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。