
Microsoft 365でMicrosoft Excelをお使いの方は、参照時にハッシュタグ記号(#)、つまりポンド記号が使われていることにお気づきかもしれません。これは比較的新しい機能で、状況によってはちょっとした省略表現として使われます。より速く、間違いなく参照が簡単になりますが、使い方を知らないと混乱してしまうかもしれません。このチュートリアルでは、Excelの参照でハッシュタグを使用する方法を説明します。
Windows 10 64ビットシステムでMicrosoft 365デスクトップを使用しています。この機能はMicrosoft 365とWeb版Excelでのみご利用いただけます。ご参考までに、デモ用の.xlsxファイルをダウンロードしていただけます。
参照:誰もが知っておくべき Windows、Linux、Mac のコマンド (無料 PDF) (TechRepublic)
Excel の # とは何ですか?
参照内のハッシュタグまたはシャープ記号は、Excelのスピル範囲を表します。スピル範囲とは、動的配列関数によって返される配列です。スピル範囲を操作していることは、結果の値が青い枠線で囲まれていることでわかります。
さらに、関数は1つしかなく、それは図Aに示すように、範囲の左上隅にあります。この場合、H3のUNIQUE()関数はH8までのスピル範囲を返します。スピル範囲内でH3ではなくセルを選択すると、Excelは関数を淡色表示にします。
図A

関数を変更する際は、1つの関数を変更するだけで、スピル範囲の値が自動的に更新されます。Excelのスピル範囲の詳細については、「Excelでスピル範囲を使用する方法」をご覧ください。
Excelでできないこと
# の使用例を見る前に、何ができないのかを確認しましょう。元のデータは Table オブジェクトとしてフォーマットされているので、# を使用してこれらの列を参照できると思うかもしれません。実際に試して、どうなるか見てみましょう。「=C3#」と入力すると、「Value」列の項目が返されます。図 Bに示すように、列 C はスピル範囲に含まれていないため、この操作は機能しません。図 Cに示すように、「=H3#」と入力すると、# 記号は UNIQUE() 関数のスピル範囲全体を参照します。
図B

図C

スピル範囲の最初のセルさえ分かれば、スピル範囲全体を取得できます。シンプルで手軽です!では、実際の例で使ってみましょう。
Excelで#を使う方法
図Cで # の簡単な例を見ましたね。この簡単な式は、スピル範囲内のすべての値を返します。実際には、使い方が難しくなることはありませんが、いつ使うべきかを知っておくことで、参照に大きな違いが生まれます。
さて、図Aに示した関数「=UNIQUE(TableSales[Personnel])」に戻りましょう。構造化参照の観点から見ると、この参照は短いです。しかし、参照「=H3#」はさらに短くなっています。ただし、単に複製するためだけにスピル範囲を作成する可能性は低いでしょう。
図Dに示すように、列Jのリストの結果を並べ替えるには、=SORT(J3#)と入力します。スピル範囲全体をハイライトする必要はありません。J3を選択して#)と入力するだけで式が完成します。テーブルを参照する、同じように並べ替えられた一意のリストを取得するには、より長い構造化参照、=SORT(UNIQUE(TableSales[Personnel]))が必要になります。
図D

それでは、実際の例を見てみましょう。具体的には、#を使ってデータ検証リストにデータを入力します。
- L3を選択します。
- [データ] タブをクリックし、[データ ツール] グループの [データの入力規則] をクリックします。
- ドロップダウンから「データの検証」を選択します。
- 表示されるダイアログで、[許可] ドロップダウンから [リスト] を選択します。
- 図 Eに示すように、ソース コントロールに =K3# と入力します。
- [OK]をクリックします。
図E

図F

図Fに示すように、Excelは並べ替えられた一意の人員リストをリストに入力します。より長い構造化参照でも同じことができますが、ハッシュタグを使用するとはるかに簡単になります。
元のデータに新しい人物を追加するとどうなるか気になりますか? 早速試してみましょう。F13キーを押し、Tabキーを押してTableSales(テーブルオブジェクト)に新しいレコードを挿入します。D14にTabキーで移動し、「Alice」と入力します。すると、J列とK列のリストが即座に更新されます。Excelは、J列のリストは並べ替えられていないため、Aliceをリストの末尾に追加します。K列のリストは並べ替えられているため、ExcelはAliceをリストの先頭に追加します。
ドロップダウンをクリックして、データ検証コントロールが新しい項目をどのように処理したかを確認してみましょう。図Gに示すように、リストは項目を追加するだけでなく、並べ替えも行っています。
図G

繰り返しになりますが、長い構造化参照を使用して同じことを行うこともできますが、これは簡単なだけでなく、# がいかに貴重であるかを示す良い例でもあります。
参照内の # の意味を知っておくと、ワークブックのメンテナンスや、何か問題が発生した場合のトラブルシューティングに役立ちます。# ショートカットを何度か使うと、頻繁に使うようになるでしょう。