Re: [請問] excel特定時間的最大值

作者: DrDeer (我是一隻鹿)   2019-04-11 11:26:15
※ 引述《li7915566 (小傻瓜)》之銘言:
: 原始檔長這樣
: 時間 數值1 數值2
: 1985/1/3 66 777
: 1985/2/5 33 888
: 1985/12/20 99 555
: ……
: 1986/5/10 400 1444
: ……
: 2000/12/18 5555 3333
: 求每年的數值1最大值,數值2的最小值
: 例如
: 時間是1987年的時候(1/1至12/31)
: 數值1最低的是多少?數值2最高的是多少
: 每年都要有
: 我知道max和min,但不知道怎麼弄條件在1987年(或88、89年)
: 但我按照網路的做法,跑出來不是0
: 就是整個表(1985-2000)的最大值,而非特定時間(1987)
騙點P幣來回文一下
Excel參考檔案如右 http://bit.ly/2Z3QL5K
◎ 先看最後的結果大概長這樣
https://i.imgur.com/aVvcwox.png
Step 1:用year函數 從日期中先取出年份
https://i.imgur.com/kzz59FJ.png
Step 2:用match函數 找出符合該年份的第一筆資料位置
https://i.imgur.com/k1MzAM9.png
Step 3:用countif函數 計算符合該年份的資料筆數
https://i.imgur.com/tiMW12d.png
Step 4:用offset函數取出一串數列 放入max函數當中
https://i.imgur.com/0Rqzzn3.png
remark:這作法的重點在offset函數
同時移置特定儲存格 及 取出指定數量儲存格陣列的功能
官方功能引數介紹如下
offset(reference,rows,cols,[height],[width])
以我個人的白話來非正式解說offset的用法
offset(參考儲存格,往下移動,往右移動,往下取儲存格數量,往右取儲存格數量)
其中後面兩個引數是可以被省略的
省略的時候就是純粹 由原本參考的儲存格移動後 取一個儲存格
加入height width後 就變成了取陣列,
之後就可以被放入 max min...etc函數使用。
※ 使用這個方法前提是日期有按年度排序
※ 當然用 樞紐資料表 以這個需求來說是相對比較快的
作者: li7915566 (James)   2019-04-11 12:40:00
原來match是這樣用
作者: wray (Rayf)   2019-04-11 14:48:00
推一個
作者: amethystboy (紫晶男)   2019-04-12 08:28:00
高手

Links booklink

Contact Us: admin [ a t ] ucptt.com