
同じ品番で、マスタの番号が変わるデータが、毎日更新されているとします。
品番で最新日付のマスタがわかるように〇印をつけたいです。(画像参照)
配列関数で
{=IF(MAX(IF(B3=$B$3:$B$14,$C$3:$C$14))=C3,"〇","")}
で成功したような気がしますが、誤ってセルをクリックしたりする事もあり
配列以外で簡単な方法はありませんでしょうか?
どなたか詳しいかたアドバイスいただけると嬉しいです。
◆データはどんどん増えていきます。
◆日付はどんどん下にいくにつれて新しくなります。
◆並び替えはしたくありません
◆エクセルは2016ですがtextjoinなど使えないです。

No.1ベストアンサー
- 回答日時:
こんばんは
>配列以外で簡単な方法はありませんでしょうか?
確かに、配列数式はご指摘のような扱いにくさはありますよね。
数式を入れた列を誤って変換するようなことを防止したければ、「シートの保護」を利用する方法も考えられると思います。
ご質問の内容を通常の関数式で行うことを考えてみると・・
ご提示のセル位置が不明ですが、式の内容から「品番」とあるセルがB2セルであるものと仮定しました。
(ご提示の式を入力しているのがD3セルと解釈しました)
ご提示の式と同等で良ければ、
=IF(COUNTIFS(B:B,B3,C:C,">"&C3),"","〇")
をD3セルに入力すれば同様の結果になるものと思います。
※ 同じ品番で同じ日付の最新データが複数存在する場合、全部に〇が付きます。
ただし、ご提示の式だとあらかじめデータが入力されていない行までに式をフィルコピーしてしまうと、データのない行には〇が表示されてしまいます。
それを避けたい場合には、D3セルに
=IF(COUNTIFS(B:B,B3,C:C,">"&C3)+(C3=0),"","〇")
としておくことで、下方にあらかじめフィルコピーしておくことも可能になると思います。
※ 例示の式では配列計算の範囲を全行にしてありますので、計算負荷がかかります。
負荷を減らしたい場合には、指定セル範囲を、使用する可能性のある範囲に狭めておくことで減らすことができます。
ありがとうございます!!お二方とも親切に教えてくださりとても選べないので初めに回答くださって嬉しかったのでベストアンサーとさせて頂きます。
No.3
- 回答日時:
添付画像をご覧ください。
表はテーブルとして作成しています。各項目のセル位置が不明なのでfujillinさんの回答とセル位置を合わせています。
ただし、ご質問者の掲示された表と一箇所だけ異なる部分があります。
13行目に品番eのデータがありますが、この日付がご質問者の掲示されたものは2023/3/4ですが、こちらの表は2023/3/3としています。
E3にfujillinさんの回答の数式を記述してみました。
fujillinさんの回答において、
>同じ品番で同じ日付の最新データが複数存在する場合、全部に○が付きます。
という注釈がついていますが、11行目と13行目を同じ日付にしたため、確かに品番eについては11行目と13行目の両方に○が表示されます。
fujillinさんの回答と同じ結果となる別の数式
=REPT("○",SUMPRODUCT((B:B=B3)*(C:C>C3)+(C3=0))=0)
という数式をF3に記述しています。
こちらも、11行目と13行目の両方に○が表示されます。
C列の日付が上から順に登録されていくとして、同じ日付でも後から登録されたもの(つまり行番号の大きい方)を最新データとする方法もあります。G3セルに
=REPT("○",ROW()=LOOKUP(1,0/(B:B=B3),ROW(B:B)))
という数式を記述しています。こちらの数式は、同じ日付でも後から登録されたものにのみ「○」が表示されます。
但し、前述のとおり「日付が上から順に登録されていく」ことが前提であり、日付の逆転が発生する場合は正しい結果になりません。
その場合は、とても長い数式になってしまいますし、fujillinさんの回答でも指摘されていますが、
>配列計算の範囲を全行にしてありますので、計算負荷がかかります。
という問題もあるので、範囲を300行までにした数式をお示しすると、
=REPT("○",ROW()=AGGREGATE(14,6,ROW(A$3:A$300)*(B$3:B$300<>"")*(B$3:B$300=B3)*(C$3:C$300=LARGE((B$3:B$300=B3)*(C$3:C$300),1)),1))
という数式を記述することになります。

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) IFERROR、SMALL関数について 2 2022/08/22 23:40
- Excel(エクセル) Excel関数 情報引用する方法 4 2022/07/31 20:59
- Visual Basic(VBA) VBAで最新のデータを別シートに転記する方法をお教えください。 3 2022/04/07 19:20
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Excel(エクセル) 【条件付き書式】countifsで複数条件を満たしたセルを赤くする方法 2 2023/02/09 23:53
- Excel(エクセル) SUMIFのIF分岐について 4 2023/04/15 12:57
- Excel(エクセル) 製品番号での整列と、検索に関して 3 2023/06/28 19:20
- Excel(エクセル) VBA でvlookup エラーなどは削除したい 8 2022/12/30 04:03
このQ&Aを見た人はこんなQ&Aも見ています
-
いちばん失敗した人決定戦
あなたの「告白」での大失敗を教えてください。
-
【お題】甲子園での思い出の残し方
【お題】「球場の砂を持って帰る」はもう古いと思った高校球児が、甲子園で負けた際に、思い出に残そうと思って行ったこと
-
"I love you" をかっこよく翻訳してみてください
あなたが考えるいちばんかっこいい "I love you"の訳を教えてください。
-
単二電池
あなたの家に何本ありますか?
-
かっこよく答えてください!!
あなたは今にも別れそうなカップルの彼女の恋愛相談に乗っています。
-
Excelで同じ商品名で、かつ日付が古いものを抽出する方法
Excel(エクセル)
-
【EXCEL】条件に一致した最新の日付の売上を抽出
その他(Microsoft Office)
-
最新の日付をVLOOKUP
Word(ワード)
-
-
4
エクセルで最新の日付に色をつける
Excel(エクセル)
-
5
EXCELで直近の日付を抽出する関数
Excel(エクセル)
-
6
excel 最新のデータ(行)を抽出する関数
Excel(エクセル)
-
7
エクセルで複数条件を満たす時、n番目に新しい日付を返す
Excel(エクセル)
-
8
【EXCEL】条件に一致した最新データのみを抽出
その他(Microsoft Office)
-
9
エクセルで最高値、最低値の日付を表示させたい
Excel(エクセル)
-
10
Excelで指定した日付から過去の最も近い日付(指定した日付も含む)を下から検索する方法
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・昔のあなたへのアドバイス
- ・字面がカッコいい英単語
- ・許せない心理テスト
- ・歩いた自慢大会
- ・「I love you」 をかっこよく翻訳してみてください
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・はじめての旅行はどこに行きましたか?
- ・準・究極の選択
- ・この人頭いいなと思ったエピソード
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロ・VBAで、当該ファイルの...
-
エクセルについてどう関数を使...
-
エクセルで二つのブックの違い...
-
エクセルでカウントする
-
エクセルのファイルのコピーを...
-
【マクロ】コードを少しでも、...
-
【マクロ、画像あり】A表かB表...
-
空白処理を空白に
-
重複しない値を抽出したい
-
【マクロ 画像あり】セル範囲の...
-
エクセルでラベルシールを印刷...
-
列挿入をVBAで
-
名前の間のスペースをそろえる...
-
ミリ秒を時間へ変更するには? ...
-
エクセルで教えてください。 例...
-
【マクロ 画像あり】Exact関数...
-
エクセルの難問。「コピペする...
-
Excelの数式?について質問です...
-
空白のはずがSUBTOTAL関数でカ...
-
エクセルの数式について教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの設定、下へスクロー...
-
別のシートの指定列の最終行を...
-
【マクロ】シート追加時に同じ...
-
Excelファイルを開くと私だけVA...
-
Excelの関数を教えて下さい。
-
マクロを実行すると、セル範囲...
-
エクセルの設定、特定の列以降...
-
Excelの条件付書式について教え...
-
Excelで作成した出欠表から日付...
-
Excelでの文字入力について
-
Excel 日付の表示が直せません...
-
Excel関数の解決方法
-
システムファイルについて
-
自動的に日付入力 応用
-
UNIQUE関数の代用
-
エクセル内に読み込んが画像の...
-
勤務外時間を出す表が作りたい
-
Excel 偶数月の15日(土日祝...
-
【マクロ】Call関数で呼び出し...
-
【マクロ】1回目の実行後、2...
おすすめ情報