第55回.Worksheetオブジェクト
Worksheetオブジェクトは、ワークシートそのものです。
エクセルのマクロVBAですから、ワークシートはしっかりと扱えなければなりません。
つまり、
WorkSheetオブジェクトは、WorkSheetsコレクションのメンバーだということです。
WorkSheetオブジェクトの指定方法
※Activesheetは、正確にはワークシートオブジェクトではありません、詳細は後述。
これらが、Worksheetオブジェクトになります。
Worksheetオブジェクトデータ型
つまり、
Dim 変数 As Worksheet
のように使います。
Worksheets
ではないと言う事です。
Worksheetsは、Worksheetの集まりで、コレクションと言います。
コレクションについては、後々説明いたします。
WorkSheetのプロパティとメソッド
WorkSheetのプロパティ、メソッド、イベントの一覧
プロパティ | Name | 名前 |
Names | 名前定義 | |
Cells | Rangeオブジェクト | |
Range | Rangeオブジェクト | |
Columns | Rangeオブジェクト | |
Rows | Rangeオブジェクト | |
FilterMode | フィルタ モード | |
Hyperlinks | ハイパーリンク | |
PageSetup | ページ設定 | |
ScrollArea | スクロールが可能な領域 | |
Shapes | すべての図形 | |
Visible | 表示するかどうか | |
メソッド | Activate | アクティブ |
Select | 選択 | |
Copy | コピー | |
Move | 移動 | |
Paste | 貼り付け | |
PasteSpecial | 形式を選択して貼り付け | |
AutoFilter | フィルター | |
PivotTables | ピボットテーブル | |
PrintOut | 印刷 | |
PrintPreview | 印刷プレビュー | |
Protect | 保護 | |
Unprotect | 保護解除 |
今までに出てきたのは、Activate、Select、Range関連くらいです。
個々のプロパティ・メソッドの使い方については、今後少しづつ紹介します。
Worksheetオブジェクトの使用方法
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
MsgBox
ws.Name
メッセージボックスには、「Sheet1」と表示されます。
Worksheetの集まりWorksheetsの中から、"Sheet1"を指定し、
その参照を、オブジェクト変数、wsに入れています。
Activesheet、Sheetsコレクションについて
Sheetsコレクションには、そのブックの全てのシートが入っています。
ですから、Activesheetもワークシートとは限りません。
シートには、ワークシート・グラフ等々の種類があります。

Activesheetも、ワークシート以外のシートの事もあります。
この為、ActivesheetやSheets()で参照されるデータ型は、Objectになっています。
従って、グラフシートが存在するブックでは、
Sheets.CountとWorksheets.Countの数は一致しません。
グラフシートを使う事はあまりないと思いますので、
WorkSheetsとSheetsの違いを取り立てて意識する必要はほとんどありません。
まずは、WorksheetとWorkSheetsの使い方について慣れれば良いでしょう。
同じテーマ「マクロVBA入門」の記事
第52回.オブジェクト変数とSetステートメント
第53回.Workbookオブジェクト
第54回.Windowsオブジェクト
第55回.Worksheetオブジェクト
第56回.Rangeオブジェクト(RangeとCells)
第57回.Applicationのプロパティ(マクロ高速化と警告停止等)
第58回.コレクションとは(Collection)
第59回.コレクション処理(For Each)
第60回.エラー処理(On Error)
第61回.「On Error GoTo」と「Exit Sub」
第62回.「On Error Resume Next」とErrオブジェクト
新着記事NEW ・・・新着記事一覧を見る
VBA100本ノック 61本目:「ふりがな」の取得と設定|VBA練習問題(1月6日)
VBA100本ノック 60本目:「株式会社」の表記ゆれ置換|VBA練習問題(1月5日)
VBA100本ノック 59本目:12ヶ月分のシートを四半期で分割|VBA練習問題(1月4日)
Select Caseでの短絡評価(ショートサーキット)の使い方|VBA技術解説(1月3日)
VBA100本ノック 迷宮編:巡回セル問題|VBA練習問題(12月31日)
VBA100本ノック 58本目:番号リストを簡潔にした文字列で返す|VBA練習問題(12月30日)
VBA100本ノック 57本目:ファイルの更新日時|VBA練習問題(12月29日)
VBA100本ノック 56本目:数式内の自身のシート名を消す|VBA練習問題(12月28日)
VBA100本ノック 55本目:他ブックのマクロを起動|VBA練習問題(12月26日)
VBA100本ノック 54本目:シートのChangeイベント|VBA練習問題(12月25日)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.繰り返し処理(For Next)|VBA入門
7.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.とにかく書いてみよう(Sub,End Sub)|VBA入門
10.繰り返し処理(Do Loop)|VBA入門
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。