シートとブック

シートのコピーと移動・非表示の方法

 Excel のシートをコピーするには「Worksheetオブジェクト.Copy」を、移動するには「Worksheetオブジェクト.Move」の各メソッドを使い、シートの表示・非表示の切替には「Worksheetオブジェクト.Visible」のプロパティを使います。

ここではそのそれぞれについて解説します。

シートのコピー

次のようなシートがあります。

① 「名古屋支社」のシートを「札幌支社」のシートの後ろにコピーします。

② 「福岡支社」のシートを「大阪支社」のシートの前にコピーします。

Sub STcopy()

 ’①

 Worksheets(“名古屋支社”).Copy _

after:=Worksheets(“札幌支社”)

 ‘②

 Worksheets(“福岡支社”).Copy _

Before:=Worksheets(“大阪支社”)

End Sub

このように、引数 Before, Afterを指定することにより、複製するシートの位置を指定することができます。

なお、コピー後、最後に複製したシートはアクティブになります。

③ 「東京本社」のシートを新規ブックにコピーします。

Sub STcopy2()

 Worksheets(“東京本社”).Copy

End Sub

Copyメソッドの引数を省略すると、新規ブックにコピーされます。

シートの移動

次のシートがあります。

① 「管理課」のシートを「財務課」のシートの後ろに移動します。

② 「開発課」のシートを「営業1課」のシートの前に移動します。

Sub STido()

‘①

 Worksheets(“管理課”).Move _

After:=Worksheets(“財務課”)

 ’②

 Worksheets(“開発課”).Move _

Before:=Worksheets(“営業1課”)

End Sub

このように、引数 Before, Afterを指定することにより、移動するシートの位置を指定することができます。

なお、最後に移動したシートはアクティブになります。

③ 「業務室」のシートを新規ブックに移動します。

Sub STido2()

 Worksheets(“業務室”).Move

End Sub

Moveメソッドの引数を省略すると、新規ブックに移動します。

シートの表示・非表示

次のようなシートがあります。

「表示切替ボタン」を押すことにより、「個別評価」が表示されていれば非表示に、表示されていない場合は表示するようにします。

Sub HYJkirikae()

  With Worksheets(“個別評価”)

    If .Visible = True Then ‘①

      .Visible = False ‘②

    Else

      .Visible = True ‘③

    End If

  End With

End Sub

① 「個別評価」のシートが表示されていれば

② 非表示にする

③ そうでなければ表示する

Visibleプロパティは指定したWorksheetオブジェクトの表示・非表示の取得・設定をします。

True の場合は表示、Falseの場合は非表示となります。

シートの追加と削除の方法  Worksheetsコレクションを対象に、シートを新たに追加する方法、および指定したシートを削除する方法をVBAでどう表していくかを...
シートの名前変更と見出しの方法  一つのワークブックには一つあるいは複数のシートが存在します。 これらのシートにそれぞれの名前を付けたり色を付けたり、シートの見...