新規シートを右側に作るマクロ
ワークシートの追加位置を前に指定(左側)につくったり、後ろ(右側)に作ったりり自由にできるようにします。また、 新規シートを末尾(右端)につくり名前を現在時間にするマクロも紹介します。
新規シートを右側に作るマクロ
通常、シートの挿入をすると、表示していたシートの左側に挿入されて、順番を入れ替えなければならないので、とても面倒です。
毎回、使いにくい思いをしているのなら、マクロを作って、
右側に挿入するようにしてみたらどうでしょう。
(サンプルファイルは、こちらから 3行マクロ2回サンプルデータ)
Excelバージョン:
新規シートを右側に作る Sheets.Add After:=ActiveSheet
マクロの記録で、シートを追加する記録をとると、
コードは、
そこで、命令に対する条件を追加して
After:=ActiveSheet
で現在のシートの後方(右隣)という意味になります。
Sub Macro1() Sheets("Sheet1").Select Sheets.Add End SubAddは、新しいワークシートを追加し、追加したワークシートをオブジェクトとして返すメソッドです。 これだと、単にシートを追加する命令だけです。
そこで、命令に対する条件を追加して
After:=ActiveSheet
で現在のシートの後方(右隣)という意味になります。
追加したコードです。
Sub 新規シートを右側に作るマクロ() Sheets.Add After:=ActiveSheet End SubSheets("Sheet1").Select の部分は、操作上記録されてしまったコードなので、省略しています。
サンプルでは、マクロをボタンに割り付けています。
ボタンを押してマクロを実行すると、シートはアクティブシートの常に右側に作成されます。
Add(メソッド)の引数
ところで、Addという動作(メソッド)には、Afterのほかにも、
引数があります。
ワークシートの追加位置を前に指定する引数 Before、
ワークシートの数を指定できる引数 Count、
ワークシートの種類を指定する引数 Type、
引数があります。
ワークシートの追加位置を前に指定する引数 Before、
ワークシートの数を指定できる引数 Count、
ワークシートの種類を指定する引数 Type、
新規シートを左側につくるマクロは、追加位置を前に指定してやります。
コードです。
コードです。
Sub 新規シートを左側に作るマクロ() Sheets.Add Before:=ActiveSheet End Sub
新規シートを末尾(右端)に、2枚追加
新規シートを末尾(右端)に、2枚追加にするマクロは、数を指定する引数Countを使います。
コードです。
Sub 新規シートを末尾に2枚追加する() Sheets.Add After:=Worksheets(Worksheets.Count), Count:=2 End Sub
新規シートの名前を現在時間にするマクロ
新規シートを末尾(右端)につくり、シートの名前を現在時間にするマクロは、次のように書きます。
コードです。
コードです。
Sub 新規シートを末尾に作るマクロ() Sheets.Add(After:=Worksheets(Worksheets.Count))_ .Name = Format(Now(), "h時mm分ss秒") End Sub
新規シートを右側につくり名前を売り上げにする
Sub 新規シートを末尾に作るマクロ() Sheets.Add(After:=Worksheets(Worksheets.Count))_ .Name = "売り上げ") End Sub