自分のワークブックの中のワークシートを取得するサンプルコード

ワークブックを読み込んだ後、ワークシートの操作をする時もやはりワークシートの読み込みも必要だよね。

そうだね!そのためにここではワークシートを読み込む方法を伝えるからぜひ活用してね。とっても簡単だから覚えておいて損はないよ。
自分のワークブックを読み込んだ後は、ワークシートの存在もVBAに伝えないといけない。
そこで、ワークシートもワークブックと同じように読みこみ、変数にセットしてあげることが大事である。
自分のワークブックを読み込んでるのだから、わざわざワークシートも指定しなくていいんじゃない?と思うかもしれないが、ワークシートは1つではない。
複数存在する時もあるだろう。
また、1つしか使わないと決めているマクロであっても、やはり指定はしてあげたほうがコンピューターにとっては混乱しなくて済む。
思いもよらない変なエラーを防ぐためにも有効だ。
では、ここからは自分のワークブックからワークシートを読み込むサンプルコードを書いていく。
いつものように色々と試してみてほしい。
なお、今回はこの記事で作った「当ワークブック読込.xlsm」のファイルを使ってみる。
Option Explicit
Private Sub set_workbook()
On Error GoTo Error
Dim wbActive As Workbook '当ワークブック
Dim wsActive As Worksheet '当ワークブック内のワークシート
'当ワークブック
Set wbActive = ThisWorkbook
'当ワークブック内のワークシート(Sheet1シート)
Set wsActive = wbActive.Worksheets("Sheet1")
If Not (wbActive Is Nothing) Then Set wbActive = Nothing
Exit Sub
Error:
'エラーメッセージ
MsgBox "エラーが発生しました" & _
vbCrLf & "エラー番号: " & Err.Number & _
vbCrLf & "エラー内容: " & Err.Description, vbExclamation
If Not (wbActive Is Nothing) Then Set wbActive = Nothing
End Sub

ちなみにこれ、シート名が変わっても対応できるんだよ。
例えばSheet1が「Main」という名前のシートに変わった場合は、
Set wsActive = wbActive.Worksheets(“Main")
としてやればOKなんだ。やってみて!
あとは、シート名が分からない時はどうすればいいのか?ということもあるよね。そういう時は是非こちらの記事を参考にしてみて!
次は、当ワークブックから別ワークブックのワークシートを読み込んだ時のコードを紹介していくよ。
ディスカッション
コメント一覧
まだ、コメントがありません