
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
こんばんは!
画像が小さくて詳細が判らないのですが、
全ての会社の最新データを表示すれば良いのでしょうか?
やり方だけ・・・
↓の画像のように元データはSheet1にあり、Sheet2に表示するとします。
まずSheet1に作業用の列を2列設けます。
作業列1は「会社名」を重複なしに表示させるための列で
作業列2が各データを表示させる列になります。
作業列1のJ4セルに
=IF(COUNTIF(B$4:B4,B4)=1,ROW(),"")
作業列2のK4セルに
=IF(B4="","",IF(F4=MAX(IF(B$1:B$2000=B4,F$1:F$2000)),B4,""))
配列数式ですので、Ctrl+Shift+Enterで確定!
この画面からコピー&ペーストする場合は
上記数式をドラッグ&コピー → K4セルを選択 → 数式バー内に貼り付け → そのまま(編集可能なまま)
Ctrl+Shiftキーを押しながらEnterキーで確定!
J4・K4セルを範囲指定 → K4セルのフィルハンドルでずぃ~~~!っと下へ
これ以上データはない!というくらいまでコピーしておきます。
次にSheet2のB1以降の項目名は必要項目のみSheet1と同じ項目名を入力しておきます。
A2セルに
=IFERROR(INDEX(Sheet1!B:B,SMALL(Sheet1!J:J,ROW(A1))),"")
B2セルに
=IF($A2="","",INDEX(Sheet1!$A:$I,MATCH($A2,Sheet1!$K:$K,0),MATCH(B$1,Sheet1!$3:$3,0)))
という数式を入れ必要列分右へフィルハンドルでコピー!
日付列の表示形式は好みの「日付」にします。
最後にA2~H2セルを範囲指定 → H2セルのフィルハンドルで下へコピーすると
画像のような感じになります。
※ 参照先セルが空白の場合は「0」が表示されます。
オプションの詳細設定から「ゼロ値のセルにゼロを表示する」のチェックを外せば
「0」は表示されません。m(_ _)m

No.1
- 回答日時:
案がありますので、紹介させてもらいます。
同一日に同一会社の情報は1つしかないという条件でやりますので、複数ある場合は使えないかもしれません。
また、同一名の会社が複数複数ある場合にも使えませんので、その場合は都道府県&会社名といったセルを追加する必要があります。
最新の日付というのは、リスト内の訪問日が最新という意味でしょうか?
※リストの左端に列を挿入できるものとして記載します。
新A行にそのデータのIDを表示させる式を入力します。
その準備として、リストの右端等でいいですので、「その行の会社がリストの上からその行までに何回出てきたか」と「その行までに存在する会社の数がいくつか」を表示する作ります。
リストはI列まででしょうか? J以降は空いているとして書かせてもらいます。
(各列4行目の例を示しますが、当然リストの下端までコピーしてください)
旧J4=COUNTIF(旧B$4:旧B4,旧B4) 途中の$は忘れずに付けてください。
これは、その行の会社名が旧B4からその列までの間にいくつあるかを表しています。
旧K4=IF(旧J4=1,旧K3+1,旧K3) ただし、旧K3に列の名称を入れたい場合は、旧K4についてのみ最初から1を入力し、旧K5以降をこれに習って作ってください。
これは、その行の会社名が初めて出てきた時にカウントを1増やす。つまりその行までに出てきた会社名の数を表しています。
旧L4=IF(旧J4=1,旧K4,VLOOKUP(旧B4,旧B:旧K,COLUMN(旧K4)-COLUMN(旧B4)+1,FALSE))
COLUMN(旧K4)-COLUMN(旧B4)+1というのは、旧B4を1列目として旧K4が何列目になるかを計算しています。列がその後追加されないと分かっている場合、その数字を直接入力でもかまいません。BとKなら10ですね。
この式はその行に会社名が初めて出てきた時に、その行までに出てきた会社名の数を表示し、初めてではない場合は会社名が最初に一致する行でのその数を表示する。というものです。 つまり、会社名のID番号と言えるでしょう。
そして新しく追加した新A列に、会社のIDとその会社が何回目に表示されたかを組み合わせて表示させます。
新A4=旧L4&”-”&旧J4
例の場合、A商事(会社ID=1)が1回目に出てきているので1-1となります。B商事が3回目に出てきている行だと2-3といった感じです。
旧M4=IF(旧J4=1,旧F4,IF(旧F4>VLOOKUP(旧L4&"-"&旧J4-1,新A:旧M,COLUMN()-COLUMN(新A4),FALSE),旧F4,VLOOKUP(旧L4&"-"&旧J4-1,新A:旧M,COLUMN()-COLUMN(新A4),FALSE)))
COLUMN()というのは入力ミスではなく、そのセル自体の列が何列目かを表示します。COLUMNの計算関係は旧L4同様直接数字でも結構です。
この式は、その会社名が初めて出てきた場合、その訪問日を表示します。2回目以降であるならば、「今回の訪問日」と「リスト上でその会社が前回出た行で旧M列に表示した日付」を比べて、大きい方=新しい方を表示します。
つまり、日付の順序に関係なく、その行より上の行で、その会社に訪問した日が最も新しい日を表示します。
旧N4=IF(旧M4=旧F4,新A4,VLOOKUP(旧L4&"-"&旧J4-1,新A:旧N,COLUMN()-COLUMN(新A4),FALSE))
COLUMNについては同様です。
この式は、先ほど出したその行までの最新訪問日がこの行の訪問日と等しければ、この行のIDを、等しくなければ「リスト上でこの会社が前回出た行で旧N列に表示したID」を表示します。
つまり、この行の会社に訪問した日がこの行より上の行で、最も新しい日の行のIDを表示します。
これで下準備は整いました。
次にマスターシートですが、こちらも新A列を追加しておきましょう。
表示させる位置が分かりませんが、タイトル行が同じ3行目にあるものとして考えます。
4行目以降に、会社ID順で最新の情報を表示させる。という形になります。
新A列に表示するデータは、会社のID番号順に「その会社のリスト内で訪問日が最新である行のID」です。
※少し長くなるので、分けて説明します。
新A4=VLOOKUP(検索ID,入力シート!旧A:旧N,COLUMN(入力シート!旧N)-COLUMN(入力シート!旧A+1,FALSE)
検索IDの部分には↓の式を=より右がわのみ入力します。
検索ID=ROW()-ROW(新A$3)&"-"&COUNTIF(入力シート!旧L:L,ROW()-ROW(新A$3))
ROWはCOLUMNと同じ使い方をしますが、こちらは行番号を取得します。
この式は、タイトル行から下に何列目になるかを計算し、「その数字の会社名ID」と「その会社名IDの会社がリスト内にいくつあるか」を-でつないだ物を表示します。
つまり、その会社がリスト内で一番下にある行のIDとなります。
このIDの行にある旧N列には、「その会社に訪問した、リスト内で最も新しい日付、のある行のID」が表示されているので、それを検索するのが上で書いた式になります。
改めて全体を書くと、
新A4=VLOOKUP(ROW()-ROW(新A$3)&"-"&COUNTIF(入力シート!旧L:L,ROW()-ROW(新A$3)),入力シート!旧A:旧N,COLUMN(入力シート!旧N)-COLUMN(入力シート!旧A+1,FALSE)
となります。
ここに書かれたIDの行のデータを全てとってくればいいので、
旧A~旧Iは全て同じ式で表すことができます。(日付混じりなので、コピーする場合は数式のみで貼り付けた方が直さなくて済みます)
旧A4=VLOOKUP(新A4,入力シート!旧A:I,COLUMN(),FALSE)
あとはこれを会社名の数だけ下にコピーすれば完成です。
長くなってしまったのでわかりにくいかもしれません。
また、途中で打ち間違えてしまっている物もあるかもしれません。
試して不具合が出るようでしたらまたご連絡ください。
(入力にかなり時間がかかりましたので、既に他の回答がでているかも?)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel関数 情報引用する方法 4 2022/07/31 20:59
- Excel(エクセル) Excelでのデータ管理 6 2022/12/24 09:33
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) 【条件付き書式】countifsで複数条件を満たしたセルを赤くする方法 2 2023/02/09 23:53
- Excel(エクセル) IFERROR、SMALL関数について 2 2022/08/22 23:40
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) Excel関数について質問です。 シート1に入力シートがあります。 =A1 =B1などで離れた数字な 5 2022/12/18 13:42
- その他(Microsoft Office) Excelで総数量を変動させたい 2 2022/11/04 23:49
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
このQ&Aを見た人はこんなQ&Aも見ています
-
一回も披露したことのない豆知識
あなたの「一回も披露したことのない豆知識」を教えてください。
-
初めて自分の家と他人の家が違う、と意識した時
子供の頃、友達の家に行くと「なんか自分の家と匂いが違うな?」って思いませんでしたか?
-
最速怪談選手権
できるだけ短い文章で怖がらせてください。
-
一番好きなみそ汁の具材は?
みんなで大好きなみそ汁の具材について語り合おうよっ!
-
かっこよく答えてください!!
あなたは今にも別れそうなカップルの彼女の恋愛相談に乗っています。
-
最新の日付をVLOOKUP
Word(ワード)
-
【EXCEL】条件に一致した最新の日付の売上を抽出
その他(Microsoft Office)
-
同じ品番のマスタで最新日付のものに〇印を入れたい
Excel(エクセル)
-
-
4
エクセルで最高値、最低値の日付を表示させたい
Excel(エクセル)
-
5
【EXCEL】条件に一致した最新データのみを抽出
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで2つの数値のうち大きい...
-
エクセルで特定の文字が入って...
-
エクセルで、2種類のデータを...
-
エクセルのまとめてカッコをつ...
-
excel: 2行ずつ間隔を空けて関...
-
Excelで中央揃えが出来ない?
-
桁の違う数値での並び替え
-
Excelでセルの高さを保ったまま...
-
Excelの結合でA列とB列の内容...
-
Excel2013 カラースケールを別...
-
excelで、1つのセルに入ってい...
-
Excelで%表示を全角にしたいの...
-
エクセルで、数字列の中にハイ...
-
エクセル 同じ値を検索して、...
-
【エクセル】2行に一行のように...
-
エクセルで、数値の範囲で仕分...
-
excelで合計の異なる得点率の算...
-
エクセル大量のセルのデータを...
-
数値の列から偶数のみを抽出す...
-
Excel 頭に「0」がついている...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで2つの数値のうち大きい...
-
エクセルで特定の文字が入って...
-
エクセルで、2種類のデータを...
-
Excelで中央揃えが出来ない?
-
エクセルのまとめてカッコをつ...
-
Excel 指定行までコピーをおこ...
-
桁の違う数値での並び替え
-
数値の列から偶数のみを抽出す...
-
エクセルで、数字列の中にハイ...
-
エクセルに入力した文字列に句...
-
連続データを1行おきに貼り付け...
-
excelで、1つのセルに入ってい...
-
Excel強制終了
-
Excel 頭に「0」がついている...
-
Excel2013 カラースケールを別...
-
Excelの結合でA列とB列の内容...
-
セル内文章から、英数字のみ取...
-
エクセルの関数
-
VLOOKUPのあいまい検索(スペー...
-
excel: 2行ずつ間隔を空けて関...
おすすめ情報