ワークシート操作
今日はワークシートの自動化について勉強していこう!
ワークブックと同じように、ワークシートも自動化できるんだね!
よろしくおねがいします!
今日使う実例はこちらになります。
実例を動かす場合、下記のようにマクロが記載されているワークブックに予めSheet1とSheet2を準備しておいてね。
Sub WORKSHEET_OP1()
'ワークシートを開く
Worksheets("Sheet1").Select
Stop
Worksheets("Sheet2").Select
Stop
Worksheets("Sheet1").Activate
Stop
Worksheets("Sheet2").Activate
Stop
'ワークシートをコピーする
Worksheets("Sheet1").Copy After:=Worksheets("Sheet2")
Stop
'ワークシートを移動する
Worksheets("Sheet1").Move After:=Worksheets("Sheet2")
Stop
'ワークシートを作成する
Worksheets.Add
Stop
Worksheets.Add Before:=Worksheets("Sheet2")
End Sub
ワークシートを開く
既に存在するワークシートを開く(アクティブなシートを切り替える)ときはSelectメソッドか、Activateメソッドを使います。
Worksheets(“Sheet1”).Select
Worksheets(“Sheet1”).Activate
実例を動作させると、4行目のSelectメソッド、12行目のActivateメソッドでSheet1がアクティブ状態になります。
8行目のSelectメソッド、16行目のActivateメソッドでSheet2がアクティブ状態になります。
ワークシートをコピー、移動する
シートをコピーするときはCopyメソッドを使用します。
シードを移動するときはMoveメソッドを使用し、どちらもAfter,Beforeという引数が用意されています。
Copyメソッドの書式は下記になります。
コピー元のワークシート.Copy After, Before
Moveメソッドの書式は下記になります。
移動元のワークシート.Move After, Before
引数Afterにシートを指定すると指定したシートの後ろ(右)にコピーまたは移動ができます。
逆に引数にBeforeシートを指定すると指定したシートの前(左)にコピーまたは移動ができます。
引数AfterとBeforeは同時に指定できないので注意してください。
実例を動かして動作を確認していきましょう。
Worksheets("Sheet1").Copy After:=Worksheets("Sheet2")
実例21行目を実行することでワークシート”Sheet2″の右側に”Sheet1″をコピーした”Sheet1(2)”がコピーされました。
Worksheets("Sheet1").Move After:=Worksheets("Sheet2")
実例26行目を実行することでワークシート”Sheet2″の右側に”Sheet1″が移動されました。
ワークシートを挿入する
ワークブック内に新しいシートを挿入する場合は、Addメソッドを使用します。
Worksheets.Add(Before, After, Count, Type)
CopyメソッドやMoveメソッドと同じように、引数BeforeまたはAfterを指定することで、自分が希望する位置にワークシートを挿入することができます。
実例31行目のようにAddメソッドを引数無しで実行してもこのように新しいワークシートを挿入することができます。
Worksheets.Add
実例35行目を実行することで、引数Beforeを使ってワークシート”Sheet2″の前(左)に新しいワークシートを挿入できたことが確認できます。
Worksheets.Add Before:=Worksheets("Sheet2")
ワークシート操作1 開く、コピー、作成/挿入 まとめ
今日はワークシートの基本操作として、ワークシートを開く、コピー/移動する、作成/挿入するといった処理について学びました。
実務でもワークシートの操作は多用することになりますので是非習得してください。
コメント