いまさら聞けないExcelの使い方講座
【Excel】範囲の名前付けに何の意味が……? 数式の可読性を上げてメンテしやすく
2025年9月10日 06:55
「名前の定義」で数式を整理してみよう
エクセルの長い数式を見ると、苦手に感じる人も多いですよね。特にVLOOKUP関数やXLOOKUP関数を使って、他のシートを参照するような数式は長くなりがちです。以下の例は、XLOOKUP関数を使って[商品マスタ]シートの商品コードを検索して、商品名と単価を取得している例です。
=XLOOKUP(B2,商品マスタ!$A$2:$A$5,商品マスタ!$B$2:$C$5)
この数式を見て「セルB2の商品コードを検索値として、[商品マスタ]シートのセルA2~A5を検索し、対応する値を同シートのセルB2~C5から取り出している」とすぐに理解できるのはエクセルに慣れている人。シートをまたいでおり、絶対参照で記述してあると少し悩むことも多いのではないでしょうか。
今回は「名前の定義」の機能を使って、参照するセル範囲に“名前”を付けて、数式を整理する方法を紹介します。ひと手間かかりますが、引数の指定やメンテナンスが楽になります。
「名前の定義」とは
「名前の定義」はセル範囲や定数に名前を付ける機能です。例えば、売上の入力されているF列(F:F)に「売上」と名前を付けると、「=SUM(売上)」のように入力して売上の合計を求めることができます。
ただ、これだけではメリットを感じないと思いますので、XLOOKUP関数と組み合わせてみましょう。
引数に使うセル範囲に名前を付ける
先ほどの数式に含まれるセル範囲は[商品マスタ]シートの「$A$2:$A$5」と「$B$2:$C$5」でした。この2つのセル範囲に名前を付けておけば、以下のように記述できるようになります。
=XLOOKUP(B2,商品コード,商品名_単価)
何のセルを参照しているのかわかりやすくなりますよね。絶対参照で指定する必要がないので、数式のコピー時の参照ズレの心配もありません。実際に設定してみましょう。
入力する名前は任意で構いません。数式の入力時に日本語への切り替えが面倒であれば「code」といった英単語で名前を付けておいてもいいでしょう。定義した名前は[名前の管理]から確認できます。
この操作によって[商品マスタ]シートのセルA2~A5には「商品コード」、セルB2~C5には「商品名_単価」という名前が付けられました。あえてセル範囲を広く設定しておけば、商品が追加された場合でも、数式を編集する必要がなくなります。
名前を利用した数式に修正する
定義した名前を使って数式を修正してみましょう。セル範囲を示す「商品コード」と「商品名_単価」と記述するだけです。
[名前の定義]の機能は、定数にも名前を付けられます。例えば、[名前の定義]ダイアログボックスの[参照範囲]に「=0.15」と指定して、名前を「割引率」のように付けておくと、数式で「=F2*割引率」といった計算もできるようになります。慣れないうちは手間に感じますが、一度使い始めれば手放せなくなる便利な機能ですよ。