2019年5月6日シートシートが多いと他のシートの選択が面倒Excelのブックにはシートをたくさん作ることが出来ます。作成可能なシート数の上限はメモリ量に依存するため明確な数はありませんが、以下のコードで試してみたら少なくとも私のPCでは2000までは作成できることを確認しました。Subこのような1000も2000もシートを持つブックはさすがに珍しいとは思いますが、それでも100近くのシートを持つブックは世の中に結構あると思います。実際私も見たことがあります。そのようなシートが多いブックを使う場合に面倒なのがシートの選択です。シートが大量にあるようなブックの場合、「一覧」などの名前を付けたシートがあってそこから各シートの説明やハイパーリンクを貼っていることがありますが、そもそも「一覧」シートを選択するのにシートタブの左の部分を右クリックしてシートの選択ダイアログで選択する、という操作が面倒です。一般的には「一覧」シートは一番左に置いてあることが多いと思います。そこで、一番左にぱっと移動するマクロを紹介します。左のシートを選択するにはどのシートからも一番左のシートに移動するためには、一番左のシートをどうやって特定するのか、という点が重要になります。その特定方法ですが、SheetsコレクションやWorksheetsコレクションの引数に1を設定するだけで特定が可能です。ワークシートだけしか使っていないのであればSheetsコレクションでもWorksheetsコレクションでもどちらも同じ結果になります。グラフシートやマクロシートやダイアログシートを使っている場合は違いがあり、これらのシートはSheetsコレクションにしか含まれません。一般的にはワークシートだけを使うことの方が多いと思いますのでWorksheetsコレクションでの書き方を紹介します。Sub1行で一番左のシートを選択可能です。右のシートを選択するには一番左のシートは「Worksheets(1)」と書けばよかったので簡単ですが、一番右のシートも大して変わりません。Subワークシートの数は「Worksheets.Count」で取得できます。それをそのままWorksheetsコレクションのインデックスとして使えば一番右のシートを意味します。上記マクロはすぐに使えることが条件になってきますので、クイックアクセスツールバーやリボンに登録しておくと便利です。あとはコンテキストメニューに追加しておく方法もあります。Excel作業をVBAで効率化シェアお問合わせTOPへ。