こんにちは
同じ品番で個数がそれぞれ違う時に下記書式を使用してみて実現できましたが、よく中身がわからないので、分析していきたいと思いますが、理解できない部分がありました。
=INDEX(B:B,SMALL(IF($I$2:$I$1999=M2,ROW($2:$1999)),COUNTIF(M$2:M2,M2)))
真ん中からバラしてみると、
IF($I$2:$I$1999=M2,ROW($2:$1999))
もしI列の中にM2と同じデータが存在していたら、その行のナンバーを返すいうことでしょうか?
結果は2になります。
COUNTIF(M$2:M2,M2))
多分COUNTIFで同じデータの何個目を指定する。
=SMALL(IF($I$2:$I$1999=M4,ROW($2:$1999)),COUNTIF(M$2:M4,M4))
結果は4ですが、
ここは理解できない部分です。データの中から指定した順位に小さい値を返すと思いますが、
なぜ4でしょうか?
INDEX(B:B,SMALL(IF($I$2:$I$1999=M4,ROW($2:$1999)),COUNTIF(M$2:M4,M4)))
リンゴは二つがあって、
SMALL(IF($I$2:$I$1999=M4,ROW($2:$1999)),COUNTIF(M$2:M4,M4))=4,
=IF($I$2:$I$1999=M4,ROW($2:$1999))=2,
まさかリンゴの2個目のとなりに、個数の列の4番目の144を返すということでしょうか?
ご教示お願い致します。
No.3ベストアンサー
- 回答日時:
No.2 回答者: fujillin さんの回答の通りで良いと思います。
=INDEX(B:B,SMALL(IF($I$2:$I$1999=M2,ROW($2:$1999)),COUNTIF(M$2:M2,M2))) を入力するときに、Ctrl+shift+Enterで入力したと思います。
配列数式の入力です。
右のWEBを参考にして下さい。 http://office-qa.com/Excel/ex256.htm
COUNTIF(M$2:M2,M2))
> 多分COUNTIFで同じデータの何個目を指定する。
⇒ それで正しいです。 この命令がある行までのM列でカウントします。
=SMALL(IF($I$2:$I$1999=M4,ROW($2:$1999)),COUNTIF(M$2:M4,M4))
> 結果は4ですが、
⇒ 違います。 No.2 回答者 fujillin さんが書いている通り、これを配列数式として入力した場合、画面には出てこないですが、[IF($I$2:$I$1999=M4,ROW($2:$1999))]の部分で、$I$2:$I$1999全行について{[=M列の該当行位置の値]であればROW($2:$1999)すなわち行番号、[=M列の該当行の値]でなければFalse}の配列が作られて、その配列の中で、[COUNTIF(M$2:M4,M4)](この4は、配列数式の場合[=M列の該当行位置])のカウントで配列の中の位置を指定しています。
ご回答ありがとうございます。
なるほどです。
SMALLというのは行の小さい順ですね。
添付して頂いたリンクの内容を読み、参考になりました。
ご指導ありがとうございます。
No.4
- 回答日時:
[No1お礼]へのコメント、
遅れ馳せ乍ら、呈示された式
=INDEX(B:B,SMALL(IF($I$2:$I$1999=M2,ROW($2:$1999)),COUNTIF(M$2:M2,M2)))
をセル O2 に入力直後に Ctrl+Shift+Enterをパシーツと叩き付けた後で、同セルのフイルハンドルを「エイヤツ!」と叩き付けたら、難なく鮮明な画像どほりになりました。
他の方の回答で、既に目出度く解決されましたでせうか?
No.2
- 回答日時:
こんにちは
図も説明もよくわからないので無いものとして、式だけをヒントにして解釈してみました。
>結果は2になります。
配列計算をさせているので、結果は配列となります。
I2:I999でM2と同じ値の行番号の配列を返します。異なる行に関しては(式中に記載がないので)FALSEが返されます。
この部分の結果は、{2,FALSE,4,FALSE,FALSE,7,FALSE,FALSE,・・・}のような感じになるはずです。
(上の例では 2、4、7…行が該当行ということになる)
この配列に対して、SMALL関数で
>COUNTIF(M$2:M2,M2)
番目の(FALSEではない)番号を求めていますが、ご提示の式の場合I列とも異なるM列から求めているので、どのような意味の順番をピックアップしているのかは式からだけではわかりません。
COUNTIF(~~ではM列で自分の行までの同じ値の数が出されるので、内容的に異なる値が並んでいる場合に結果の数はいろいろに飛ぶので、「それぞれのグループ内の出現順番」とでも言うべき内容の値になります。
全体的には、このようにして求めた行番号を利用して、B列のその行番号の値を求めています。
この方法は、「全体から条件に該当するものをピックアップして、詰めて表示する(抽出)」の際に良く用いられる方法に似ていますが、抽出の場合には順序の部分を1から連番になるようにするのが常道です。
ご提示の式はそうなってはおらず、さらにI列とM列の関連が不明なので実際のところの意味がイマイチわかりません。
(もともと、どのような意味の計算をしようとしているのかも全く不明ですので…)
>よく中身がわからないので、分析していきたいと思いますが~~
配列計算であるということに思いが至っていらっしゃらないのではないかと想像します。
言葉での説明でもよくわからないと思いますが、現状の範囲(2~999行目)を小さくして(数行程度に)、「数式」-「数式の検証」で辿ってみると、エクセルがどのような手順で計算しているかを見ることができます。
(行数が多いままやると、とても見られたものではなくなりますのでご注意)
「数式の検証」の内容が理解できるようになれば、式の中身も理解できるようになると思います。
※ 多少なりともご参考にでもなれば・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- Excel(エクセル) エクセル 関数について質問です。 2 2022/10/03 11:14
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Excel(エクセル) IFERROR、SMALL関数について 2 2022/08/22 23:40
- Excel(エクセル) If関数に関する質問です。(再掲) 3 2022/10/01 20:51
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) VBAでのループ順序について 3 2023/03/13 10:55
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
exselの質問です
-
エクセルの日付に時差を加算 #V...
-
(マクロ)vlookupの元データを同...
-
Excelのデーターを消して保存し...
-
Excelの数式について教えてくだ...
-
pdfの表をexcelにはりつけて計...
-
エクセルの「赤」の印刷がうま...
-
エクセルで特定のセルに入力が...
-
エクセル おすすめフォント
-
一つのセルに(例えばA1)入力...
-
Excelの関数について教えてくだ...
-
関数の説明
-
Excelにいついて質問です。
-
[オプション]の[アクセスビリテ...
-
VBAについての質問です
-
Excelについて
-
CSVファイルについて質問です。
-
エクセルの「入力規則」のプル...
-
エクセルファイルがファイルの...
-
エクセルであるセルに数字を入...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA、別ブックへ転記す...
-
エクセルでの作業計算方法について
-
時間によってファイル名が変わ...
-
【関数】適切な文字数の数字を...
-
Excelについて教えてください
-
エクセル初心者です 関数の入れ...
-
【マクロ】ファイル名の変更に...
-
UNIQUE関数が使えないバージョ...
-
エクセルの計算
-
【関数】先頭だけにある、半角...
-
Excelで、決まった行を繰り返し...
-
Excelでセルの値が同じか...
-
LOOKUP関数を使えばいいのでし...
-
Excel
-
はがきについて。
-
エクセルの条件付き書式につい...
-
エクセルのデーターが2か月前の...
-
エクセル②
-
エクセルで「-0.0」と表示さ...
-
Microsoft1Officeの互換ソフト...
おすすめ情報
鮮明な画像をアップロードします。
よろしくお願いいたします。