Excelで下記のような表があります。
項目1の文字列で最大値にあたるデータを関数を使って取得するのが目標です。
表1
行 | 項目1 | |
---|---|---|
1 | AACD | |
2 | ABCD | |
3 | ACCD | |
4 | ADC |
##前提
★項目1の中で「A」を最小値、「Z」を最大値とする
★文字数はすべて統一して4文字(指定桁になるよう空白右側空白埋めになっているデータもあり→上記の表では行4)
★表ではわかりやすくするため上から順にA→Zの流れになっているのですが、実際は順不同となっている場合もあります。
処理内容としたら、OracleのMax関数のような動きをエクセルで実現させたいということです。
表1のデータであれば「ADC」が取得したい、ということです。
ですが、調べて出てくるのは「MAXIF関数」や「MAXA関数」ばかりです。
上記だと、文字列ではなく、「数値の最大(MAXIF)」または「0か1(MAXA)」となってしまい、目標となる文字列の取得ができません。
Excelでは文字列の最大、最小を求めることはできないのでしょうか?
わかる方いましたら教えてください。
##追記
上記の内容が解決していない状態で恐縮です。
目標内容の追加を1点だけさせていただきます。
表2
行 | Id | ipt | |
---|---|---|---|
1 | 1234 | ||
2 | 9876 | ||
3 | 6543 | ||
4 | ...etc |
表3
行 | Id | 項目1 | |
---|---|---|---|
1 | 1234 | AACD | |
2 | 9876 | ABCD | |
3 | 6543 | ACCD | |
4 | 1234 | ADC | |
5 | ...etc |
表2.Idと表3.Idがキーとなっていて、両テーブルでIdが合致する行が複数ある場合に項目1の文字列での最大値を取得するのを目標とします。(他前提条件は変わらずです)
現状で重複するデータがある場合に複数セルにて重複するデータをすべて取得するというのは実現ができています。
=IFERROR(INDEX($Id$1:$Id$5,MATCH(LARGE(($Id$1:$Id$1="1234")*1/ROW($Id$1:$Id$5),ROWS($Ipt$1:$Ipt1)),1/ROW($Id$1:$Id1),0),COLUMNS($ipt$0:ipt$0)),"") //ipt列は入力するセルで項目名の行を0行目としています
上記の場合、1セル1データの取得となっておりますが、参照するための列や行を増やしたりすることをせず、iptの入力セルだけで完結させたです。
Excelでの重複データを取得する方法を調べましたが、1セル1データ取得の方法がほとんどでした。
引用テキスト参照するための列や行を増やしたりすることをせず、iptの入力セルだけで完結させたです。
この方法での取得はあるのでしょうか?併せて教えていただければ幸いです。
###スペック情報
OS:Windows10 Pro
Soft:MicrosoftOffice Orifessional Plus 2016 Excel
回答2件
あなたの回答
tips
プレビュー