トップ > 資格を活かすには > やってみよう!Excel VBAで業務改善! > 次なるイノベーション編: 第32話「イノベーションを起こそう!」1/4 :岩田部長は大忙し

やってみよう!Excel VBAで業務改善! 次なるイノベーション編|第32話 「イノベーションを起こそう!」

岩田部長は大忙し

岩田、梶田の両部長が握手を交わしてから、数週間が過ぎました。

会議室では、岩田部長が来月の経営戦略会議に向けて、
システム企画室新設の議題を提起する準備に追われています。

「シートを左端にコピーするには、"Before:=Sheets(1)"の引数を、
右端なら、"After:=Sheets(Sheets.Count)"の引数を、Copyメソッドに指定するっス」

「はい、正解」

その頃事務所では、森川くんと岬さんがベーシックの試験に向けて、
最後の追い込みの真っ最中です。

「最近、リニューアルしたって聞いてたけど…。
私のときより、内容が実践的になってるわね…」

岬さんは興味深そうに、新しくなった公式テキストをパラパラとめくります。

たとえば、Sheet2を左端へコピーするというのは、次のように考えられます。

Sheets("Sheet2").Copy Before:=現在の左端にあるシート

現在左端にあるシートは、シートの位置を表す数値が「1」です。

Sub Macro8()
    Sheets("Sheet2").Copy Before:=Sheets(1)
End Sub

<中略>

シートの個数はSheets.Countで取得できます。
したがってSheet2を右端にコピーするには、次のように考えます。

Sheets("Sheet2").Copy After:=右端のシート
 ↓
Sheets("Sheet2").Copy After:=Sheets(3)
 ↓                この「3」はシートの個数(Sheets.Count)
Sheets("Sheet2").Copy After:=Sheets(Sheets.Count)

                                         < ベーシック公式テキスト P157~P158 >

「じゃあ、森川くん。
BeforeとAfterどちらの引数も指定しなかったとき、シートはどこにコピーされると思う?」

「ええっと……そのときは……」

森川くんは目を閉じて、記憶の糸をたどります。

「……ああ、そっか!
そのときは、新規ブックが作られて、そこにコピーされるっス!」

岬さんはニッコリと微笑むと、大きく首を縦に振りました。

「うん!明後日の試験、あなたなら大丈夫よ。きっと合格するわ」

「あ、ありがとうございますっス!」

森川くんは赤らめた頬を、ポリポリと掻きました。

一覧にもどる