この人頭いいなと思ったエピソード

Excel関数について教えてください。

1から12までの数字があります。
セルが5つ横並びにあり、その中に1から11までの数字が入ります。

数字は若い順で並んでいます。2.3とか、1.5.9とか3.7.10.11など。
5つのセル全てに数字が入ってるとは限りません。
この5つのセルの中で数字がひとつだったら、その数字を返す。
2つ以上あった場合は2つ以上と分かるようにする(記号等なんでもいいです)
というのを関数で表したいのですがいい方法はないでしょうか?
説明分かりにくかったら申し訳ありません。

質問者からの補足コメント

  • 申し訳ありません。説明不足でした。

    1から11までの数字があります、の間違いです。
    これらの数字はセルに直接数字が入ってるのではなく、数式(Vlookup)が5つのセルに入っていて、それが数字として表示されてます。
    カウント関数を入れると、5になってしまい、どうしたらいいかわからず…

      補足日時:2024/09/20 22:19

A 回答 (4件)

データはA1~E1にあるとします。



A1~E1に数値セルの個数は下式で求められます。
=SUMPRODUCT(ISNUMBER(A1:E1)*1)

これを使って、質問文の趣旨に添うようにすると下式となります。
=IF(SUMPRODUCT(ISNUMBER(A1:E1)*1)=1,SUM(A1:E1),IF(SUMPRODUCT(ISNUMBER(A1:E1)*1)>=2,"2個以上","0個"))
    • good
    • 0

No1です。



>数式(Vlookup)が5つのセルに入っていて、それが数字として表示されてます。
空白セルを参照すると「0」が表示されているってことでしょうか?

>カウント関数を入れると、5になってしまい~~
COUNT関数は上記の「0」もカウントしてしまいますので、そうなりますね。
0 より大きな数だけをカウントすれば良いのなら、代わりに
 COUNTIF(A1:E1,">0")
を用いれば、「0より大きな数値」の数をカウントできます。
あるいは、Vlookup関数の方で、空白の場合は空白を返すような処理にしておけば、ご質問に関する関数式はそのままでも使えるでしょう。

元のVLOOKUP関数がエラー値を返すようだと、有効な値が1つの場合でもSUM関数等ではラー値を返します。
こちらも避けたければ、SUM関数の代わりに、AGGREGATE関数を用いるなどで可能になります。
(もちろん、VLOOKUP関数側でエラー処理をしても可能です)
    • good
    • 0

こんばんは



>1から12までの数字があります。
という説明の意味が不明なので、無視しました。

>セルが5つ横並びにあり、
関数の質問の割にはセル位置が不明ですが、仮にA1:E1の5セルとします。
表示したいセルに
=IFS(COUNT(A1:E1)=1,SUM(A1:E1),COUNT(A1:E1)>1,"2つ以上",1,"数字なし")
のような式を入れておけば、宜しいのでは?
    • good
    • 0

質問文通りに数字が入ってるなら、


「.」があるなら数字が複数って事になる。
A1~E1にそういう数字の並びが入ってるとして。

A2=IF(ISERR(FIND(".", A1)), A1, "2つ以上")
A2を→向きにコピペ。
だとか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A