やりたいこと
Google Spreadsheetで検索して複数の行が一致した場合、一致した行のうち、特定の列の空白でないセルの最初の値を抽出したい。
例
元データ
A | B | C | |
---|---|---|---|
id | 名前 | 名前2 | |
1 | 100 | 太郎 | |
2 | 100 | 太郎 | 次郎 |
3 | 100 | 太郎 | |
4 | 100 | 太郎 |
抽出データ
A | B | C | |
---|---|---|---|
1 | id | 名前 | 名前2 |
2 | 100 | 太郎 | 次郎 |
「元データ」では「id」が「100」のレコードが4行ありますが、「抽出データ」では1行にまとめ、「元データ」の「名前2」の空白ではない最初の値を取得したいです。
「抽出データ」の「C2」で「次郎」を取得するには、関数をどのように設定すればよいのでしょうか。
やってみたこと
vlookupを使ってみましたが、空白になりました。
よろしくお願いいたします。
「id」が同じものをまとめるといった感じでとらえて大丈夫でしょうか?(SQL的にはGroupByですね👀)
ただ、例では結果がOKとNGが混合しているので、考え方によっては抽出データを「NG」にしなければならないと考える人もいます。(NGの方が多いので)
「名前2」が空白でないという条件だった場合でも、例のD3セルに「三郎」と入っていたらどちらを採用するべきなんでしょうかね?
それとも、そういったデータは絶対に存在しなくて、単に「名前2」が空白でない行だけ抽出すればよいのでしょうか?(その結果idが重複するようなデータではない、ということでしょうか?)
条件によって関数の書き方もかなり変わってきますので💦
> 「id」が同じものをまとめるといった感じでとらえて大丈夫でしょうか?
はい、そうです。
> ただ、例では結果がOKとNGが混合しているので、考え方によっては抽出データを「NG」にしなければならないと考える人もいます。(NGの方が多いので)
「結果」の列は今回は考えなくてよいので消しました。
> 「名前2」が空白でないという条件だった場合でも、例のD3セルに「三郎」と入っていたらどちらを採用するべきなんでしょうかね?
同一「id」の「名前2」に複数行に値が入っていることはないです。必ず1つしか入っていません。

回答1件
あなたの回答
tips
プレビュー