アルファベットのワークシートにジャンプする(Microsoft Excel)
かなりの数のワークシートを含むワークブックがある場合は、ワークシートタブの近くにあるスクロール矢印を使用するよりも、特定のワークシートグループにジャンプする簡単な方法を探している可能性があります。たとえば、1つの文字を入力して、その文字で始まる最初のワークシートをExcelに表示させることができます。これをExcel内で直接行う方法があります。次の手順に従ってください:
。タブの左側にあるスクロール矢印を右クリックします。
Excelは、ワークシートのタブ名の多くを含むコンテキストメニューを表示します。
。 [その他のシート]オプションをクリックします。 Excelに[アクティブ化]ダイアログボックスが表示されます。
すべてのワークシート名がダイアログボックスに一覧表示されます。 (図1を参照)
。必要なワークシート名の最初の文字を押します。その文字で始まる最初のワークシートが選択されます。
。同じ文字を押し続けて、その文字で始まる次のワークシートを選択します。
。目的のワークシート名を選択したら、Enterキーを押します。
このアプローチの興味深い点は、ワークシートをアルファベット順に使用する必要がないことです。文字を押すたびに(手順3と4)、Excelはその文字で始まる次のワークシートを選択します。
このアプローチは非常に高速に使用できますが、マウス(2回のクリック)とキーボードの両方を使用するため、反対する人もいます。厳密にキーボードを使用することを好む人もいます。この場合、ワークシートをアルファベット順に並べ替えて(_ExcelTips_の他の問題で説明されているように)、マクロを使用して目的のワークシート領域をプルアップするのが最適です。次のマクロでうまくいきます:
Sub GoToSheet() Dim iTemp As Integer Dim sSheet As String Dim sThisOne As String sSheet = InputBox("Enter first letter of sheet", _ "Go to sheet", Left(ActiveSheet.Name, 1)) If sSheet = "" Then Exit Sub sSheet = UCase(Left(sSheet, 1)) iTemp = 0 For i = 1 To ThisWorkbook.Sheets.Count sThisOne = UCase(Left(ThisWorkbook.Sheets(i).Name, 1)) If sThisOne = sSheet Then iTemp = i Exit For End If Next i If iTemp > 0 Then ThisWorkbook.Sheets(iTemp).Activate End If End Sub
次に、Ctrl + Gなどのショートカットキーをマクロに割り当てます。これ以降は、Ctrl + Gを押して文字を入力し、Enterキーを押すだけです。
指定した文字で始まる最初のワークシートが選択されます。
最終的な解決策は、ワークシートに独自の「インデックス」または「目次」を作成することです。ブックの先頭に空白のワークシートを挿入してから、ブック内の他のさまざまなワークシートへのハイパーリンクを追加します。
誰かがハイパーリンクをクリックすると、ハイパーリンクによって参照されているワークシートが表示されます。
この方法でハイパーリンクを設定するのは間違いなく手間がかかりますが、これまでに説明した他の方法では提供されない利点があります。
まず、ユーザーはワークシート名をまったく知る必要がありません。次に、複数の「キーワード」をリンクとして使用し、それぞれが同じワークシートにつながるようにすることができます。このようにして、ワークブック全体がさまざまなユーザーにとってよりアクセスしやすくなります。最後に、シートはアルファベット順に並べるのではなく、任意の順序にすることができます。
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(2718)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。