[[20180522171012]] 『関数について、番号を表示させたい』(くだもの) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『関数について、番号を表示させたい』(くだもの)

下記のような決まりがあるとして、番号を表示したいと思います。
りんご_3
みかん_8
なし_4
ぶどう_2
すいか_23
かき_12
バナナ_ 126

D列に
1.例えば「りんご」があれば、F列に番号の3が入るようにしたいので、次の関数を作りました。IF($D2="りんご","3")
2.その他のみかん〜バナナまで関数を同じように作成して繋げればよいと思いますましたが、繋げ方がわかりません。教え下さいませんか。
例えばIF($D2="りんご","3")+IF($D2="みかん","8")・・・・・・というようにすればできますが、もう少しスッキリとするにはどのようにしたらよいでしようか。
3.その他にF列以外にもI列・L列に「IF($D2="みかん","3")」・・・・この関数を入れて表示させたのですが、D列に空欄もあります。空欄の場合には、F列・I列・L列も空欄になるようにしたいのですが、このような関数は作れますか。教えて頂けませんでしようか。

< 使用 Excel:Excel2013、使用 OS:Windows10 >


なんで数式内に全部書きたいんでしょうか?

たとえば、適当なセル(別シートでも可)に
変換表を作っておいて、VLOOKUP関数やINDEX関数とMATCH関数の組み合わせで抽出するのはダメなんでしょうか?

(もこな2) 2018/05/22(火) 19:28


 こんにちは

 下記を標準モジュールに貼り付ける。
 F2セルに =xyz(D2) 必要分下にフィルコピー

’ここからーーーーー

 Function xyz(vv As Object) As String
    'Application.Volatile

    Select Case vv.Value
        Case "": xyz = ""
        Case "りんご": xyz = 3
        Case "みかん": xyz = 8
        Case "なし": xyz = 4
        Case "ぶどう": xyz = 2
        Case "すいか": xyz = 23
        Case "かき": xyz = 12
        Case "バナナ": xyz = 126

    End Select
  End Function

’ここまでーーーーーーーー

(嘱託社員) 2018/05/22(火) 19:57


 I列・L列にも
 
 I2 =xyz(D2)

 L2 =xyz(D2)

(嘱託社員) 2018/05/22(火) 20:03


2016なら、IFS関数で簡単にできますが、

【エクセル時短】もう「IF」のネストは不要。新関数「IFS」で複数の条件指定を手早く済ます | Excel | できるネット
https://dekiru.net/article/15436/

2013なんですね。
下記のようにIFをネストします。

=IF($D2="りんご","3",IF($D2="みかん","8",IF($D2="なし","4",IF($D2="ぶどう","2",IF($D2="すいか","23",IF($D2="かき","12",IF($D2="バナナ","126","")))))))

ただ、メンテナンスのことを考えたら、もこな2さんも提案されているように VLOOKUP関数等を使う方法をお勧めします。
(hatena) 2018/05/22(火) 22:01


どうしても数式内に無理矢理、納めたいならこんな感じとか・・・・
エラーになると嫌な場合は、さらにIFERROR関数で囲ってあげればいいとおもいますが、数式がながくなるので割愛します。

検索値をA1に入力するとして・・・

 =INDEX({3,8,4,2,23,12,126},MATCH(A1,{"りんご","みかん","なし","ぶどう","すいか","かき","バナナ"},0))

エクセル2013で動作確認済みです。
(もこな2) 2018/05/22(火) 22:37


色々な方々にお世話になって申し訳ありません。「IFS」・INDEX関数とMATCH関数等、また勉強してみます。ありがとうございました。
(くだもの) 2018/05/23(水) 10:47

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.