ご訪問ありがとうございます。
Googleシートマスターのひろしです。
前回
QUERY 年月日から日付データを取得し華麗にdateを使ったselect文を作成する
今回は、とっても価値の高い方法をお伝えします。
これを知ることであなたは、
- 関数で日付データが最新のデータを取得することができます。
- QUERY関数で最大値を取得することができます。
なので、サクッとマスターして
と答えてあげてください。
質問のあった動画
VLOOKUPで左側の 値を取得する方法(Gスプレッドシート)
配列の基本が理解できます。
VLOOKUP関数のみで左側の値を取得することができます。
動画はこちら
シートはこちら
※クリックするとシートが開きます。
ポイント
テスト実施日を降順で並べ替えて、先頭の行を取得すればいいですね。
Aさん(G3)の直近のテストの国語、数学、理科を取得する
Aさん(G3) Where メンバー=G3
国語、数学、理科 select C,D,E
テスト実施日を降順で並べ替える order by B desc
order by |
行を列の値で並べ替えます。 |
desc 降順
直近 limit 1
limit |
返される行数を制限します。 |
すべて連結すると
=QUERY($A$3:$E$16,”select C,D,E where A='”& G3 &”‘ order by B desc limit 1″)
となります。
最後までご覧いただきありがとうございます。
つぎはこちら
QUERY関数で値を集計する方法(VLOOKUPより使える)
QUERY関数を使って値の集計ができるようになります。
count,sum,max,minなどいろいろできます。
コメント
「Google Spreadsheet QUERY SQL 最新行」でたどり着きました。
とても素晴らしい情報のご提供、ありがとうございます!
質問なのですが、
Aさん、Bさん、Cさん、・・・と人が決まっているときは良いのですが、
佐藤さん、鈴木さん、山本さん、木下さん・・・、などなど、などなど
随時、人が増えたりしていて、人が固定で決められない場合に、良い方法はないでしょうか?
事例同様に。人単位で、最新のデータのみを抽出したいのですが。
イメージでは、毎月変わる、アルバイト時給の最新の時給のみを表示したいのです。
時給が変わるごとに、過去の時給も履歴的に保管しつつ、追記していっています。
どうぞよろしくお願いいたします。
匿名さんコメントありがとうございます。
文字情報だけでは、なかなか難しいので
シートを提供いただき、シート内にどういう条件の場合、
どうしたいのかを具体的に提示いただければ、
回答できるかもしれません。
よろしくお願いいたします。
ご返答、ありがとうございます!
1年以上前の記事ですし、まさか、お返事いただけるとは思っていませんでした。
ありがとうございます!
質問させていただくために、シートをいじっていたら、自己解決できました。
この記事がなかったらできませんでした!誠にありがとうございます!
一言でいうと、Aさん、Bさん、・・・の部分を、決め打ちしたくなかったということになります。
結局、「A,B,C,D,E」と縦に並んでいる行をunique()関数を用いることで、解決できました。
ありがとうございます!(表中央)
さらに、人が増えた時に、行を追加しなくていいようにしたかったのですが、
limitだとわからず、Vlookupでできました(表右)
https://docs.google.com/spreadsheets/d/1DC4zOCGHxZqPGnGcJOEh7DKGqIjvt2oo-HujouoBUBU/edit?usp=sharing
お騒がせしました。
ありがとうございます!!
自己解決されたそうですね。
質問するために内容を整理しているとできてしまう。
私もよくあります^^
シートの提供ありがとうございます。
動画で使わせていただくかもしれません。