Excelの
「引数」とは?

この記事は約5分で読むことができます。

2009-07-09 2018-05-10

  • キーワード
  • Excel
  • 関数
  • 引数
  • argument
  • 多すぎる引数が入力されています
  • 戻り値
  • 返り値

ほぼ全ての関数に関わる「引数」とは何か?初心者さんにもわかりやすく、くわしく解説します。

1.引数とは(引数の意味)

まず、引数の読み方は”ひきすう”です。読みにくい言葉ですね。私も初めは読めなくて「いんすう」と読んでましたw。ちなみに英語は”argument”です。また引数とセットで覚える必要がある用語には”関数”、”戻り値(返り値)”があります。

引数はエクセルの関数に必要な情報です。各種の関数に対して指定する必要がある情報です。関数により指定する引数と数が異なります。引数は関数名の後ろにある()カッコの中に指定します。

引数の意味ですが、簡単に言えば「関数に必要な材料」です。難しい言い方をすれば「関数の外部からインプットされる情報」です。 ちなみに、関数には「戻り値(返り値)」というものがあり、これが関数からの「答え」で、「関数の内部からアウトプットされる情報」です。

例えば、カレーライスを作る「料理」という関数があるとして(実際はありませんよw)、引数は玉ねぎ、ニンジン、ジャガイモ、お肉、カレー粉、お水、お米、などの「材料」です。戻り値(返り値)は「カレーライス」の事です。 これらの関係性を図に表すと以下の様な関係が成り立ちます。

引数/関数/戻り値の関係

2.引数の指定方法

まずは、基本的な関数と引数の書式です。

=関数名(引数1,引数2,引数3

例えば、条件判断で利用する「IF関数」の場合、

=if(C1>=80,"合格","不合格")

と指定しますが、カッコ内のカンマで区切られた3つの「数値」「記号」「文字列」を「引数」といいます。 具体的には「C1>=80が引数1」「"合格"が引数2」「"不合格"が引数3」です。 ちなみに合格と不合格を"(ダブルコーテーション)で括るのは、文字列として指定したいからです。

3.引数の数と順番

関数によって引数の数が違い、引数を複数持つ関数がほとんどですが、引数がひとつの関数や、引数が無い関数もあり、多いものだと4つ指定する必要がある関数もあります。

引数を複数指定する場合は、引数と引数の間に半角の”,”カンマ(ヒゲ付きの点)で区切ります。(この区切り文字は.(ドット)ではありませんので、間違えない様に注意して下さい)。

又、引数の順は関数毎に決まった並び順があり順が違うと意図した答えが関数から返ってきません。関数の説明をよく確認し決められた順で引数を指定して下さい。

3-1.引数が無い関数の例

例えば、円周率を求める「PI関数」には、以下の様に引数がありません。

=PI()

実際にエクセルに関数を入力してみると

引数が不要な関数の例

この様に「3.1415927」と表示されます。もっと桁数を多く表示したい場合はセル幅を広げて下さい。

円周率の計算(π)については”PI関数”の記事で詳しく解説していますので、良ければそちらを参照してください。

3-2.引数が2つある関数の例

四捨五入を求める「ROUND関数」には、以下の様に引数が二つあります。

=ROUND(引数1,引数2)

実際にエクセルに関数を入力してみると

引数が2つある関数の例

この様に「0.1235」と表示されます。

四捨五入については”ROUND関数”の記事で詳しく解説していますので、良ければそちらを参照してください。

3-3.引数が4つある関数の例

指定した範囲の中から、条件に一致したデータを取り出すことが出来る「VLOOKUP関数」には引数が4つ必要です。

=VLOOKUP(引数1,引数2,引数3,引数4)

実際にエクセルに関数を入力してみると

引数が4つある関数の例

この様に「100」と表示されます。

指定した範囲の中から、条件に一致したデータを取り出す関数については”VLOOKUP関数【準備中】”の記事で詳しく解説していますので、良ければそちらを参照してください。

4.引数に指定出来る種類

関数の引数に指定できる内容は以下の5種類です。

  • 1.セル参照(セル/セル番地)
  • 2.セルの名前
  • 3.定数(数値/文字列/論理値/エラー値/配列定数)
  • 4.論理式
  • 5.数式

4-1.セル参照

4-1-1.セル番地

セルに入力された値や情報が参照される。単一のセル。

=AVERAGE(A1,B2,C3,D4)

4-1-2.セル範囲

セル範囲に含まれる、全ての値や情報が参照される。B1:D10のように2つのセル番地を「:(コロン)」で区切る。複数のセル。

=SUM(B1:D10)

4-2.定数

4-2-1.数値

1000、-5、3.14のような値、120%のようなパーセント値、"50,000"のように「"(ダブルクォーテーション)」で括ったカンマ付きの値。

=AVERAGE(2345,"1,234",987)

4-2-2.文字列

文字列は「"」で囲みます。空白は「""」と指定。

(例)=TRIM("     みんなのエクセル")

4-2-3.論理値

TRUE又はFALSE。

=ISLOGICAL(FALSE)

4-2-4.エラー値

#N/A、#VALUE!、#NUM!、#REF!、#DIV/0!、#NULL!、#NAME?のどれか。あえてエラーにしたい場合に使用。

=ERROR.TYPE(#NULL!)

4-2-5.配列定数

値や文字列を「,」(カンマ)又は「;」(セミコロン)で区切り、「{}」(波カッコ)で囲む。「,」は列、「;」は行の区切りを示す。{1,2;3,4;5,6;7,8}は2列4行の配列となる。

=AVERAGE({1,2;3,4;5,6;7,8}*{100,200})

4-3.関数

引数に関数を指定すると、内側の関数が先に計算され、その戻り値(返り値)がひとつ外側の関数の引数として使用される。

=ROUND(AVERAGE(B2:D6))

4-4.セルの名前

単一のセル又はセル範囲に付けらた名前で、セルの名前に入力されている値や情報が引数に使用。

=AVERAGE(母集団)

4-5.論理式

上記、4-1.セル参照、4-2.定数、4-3.関数を比較演算子で数式にしたもので、結果が正ならTRUE、誤ならFALSEとなる。

=OR(A3=80,B2<40)

4-6.数式

上記、4-1.セル参照、4-2.定数、4-3.関数を算術演算子や文字列演算子で数式にしたもの。

=ROUND(SUM(C2:C6)*108%,3)

5.引数にセル番地を指定する方法

セル番地の指定方法は5種類あります。合計を計算するSUM関数を例に、セル番地の指定方法を解説します。 ちなみに、SUM関数、AVERAGE関数、MAX関数、MIN関数などで、離れたセル番地を指定する場合、指定できるセル番地の数は、最大255です。

5-1.一つのセルを指定する方法

=SUM(A1) ※ちなみにSUM関数にひとつつのセル番地だけを指定するのは意味がありません

5-2.ある範囲のセルを指定する方法

=SUM(A1:B10)

5-3.離れた複数のセルを指定する方法

=SUM(A1,C5,E9)

5-4.離れた複数のセル範囲を指定する方法

=SUM(A1:B10,D15:E20)

5-5.共通するセル範囲を指定する方法

=SUM(C1:D10 A5:F6)

6.引数のセル番地を固定する方法

セル番地を固定指定して絶対参照にするには$を指定します。A1を固定して絶対参照にするには

$A$1

とします。

セル番地を固定する(絶対参照・相対参照・複合参照)については”関数コピーのセル番地ズレを回避”の記事で詳しく解説していますので、良ければそちらを参照してください。

7.引数に文字列を指定する方法

文字列を引数に指定する場合、指定する文字を"文字列"の様にダブルクオーテーションでくくります。 例えば条件によって「合格」または「不合格」と表示する場合(これはIF関数をいうのを使うと出来ます)などです。 これは全角文字でも半角文字でもダブルクォーテーションで括る必要があります。

=IF(A1>=50,"合格","不合格")

8.「多すぎる引数が入力されています」とエラーが表示された場合

「多すぎる引数が入力されています」とエラーが表示された場合

「多すぎる引数が入力されています」とエラーが表示されるのは、その関数に必要な引数の数を超えて指定した場合です。 特にIF関数で入れ子にしている場合に、このエラーが発生しやすいと思います。

エラーの出ている式をコピーし、メモ帳などにペースとし、カンマで改行してみると、指定した引数の数がわかりますので、関数に必要な引数の数を超えていないか確認してみましょう。 メモ帳は画面左下の[スタートボタン]→[Windowsアクセサリ]→[メモ帳]で起動できます。

=IF(A10>=0,ROUND(A10*1.08,2),"必要","不要") ←引数が多いエラー例

もし上記のような式を入力したけど引数が多すぎるとエラーが表示されたら、メモ帳に貼り付けて,(カンマ)で改行すると、どこが原因なのかすぐわかります。

引数が4つある関数の例

この例では、IF関数の引数は"条件式"/"真の場合"/"偽の場合"の3つ必要が必要な所、4つの引数を指定しているので、引数が多すぎることが確認できます。 物事が”わからない”のは、”わかれて(分けて)考えてない”ということなので、分けて考えるのが問題解決の近道です。

IF関数については”IF関数-条件分岐”の記事で詳しく解説していますので、良ければそちらを参照してください。

同じカテゴリの記事