有一種月報很好看:上面兩層標題,月份橫跨好幾欄,門市名稱靠在左邊。可是當你想問「4 月信義店的蘋果紅茶賣了幾杯」,公式沒辦法直接問。
同一份資料換成一列一筆的清單,一條 SUMIFS 就算得出來。這篇用手搖飲的月銷量,把兩種排法放在一起比,再整理出三條規則。
圖:兩邊是同樣的 8 個數字,左邊給人看,右邊給公式問。
一列只講一筆
先從合併儲存格說起。把月份合併起來,每個月只寫一次,看起來很清爽。合併後只有最上面那一格有值,其他格是空的:
| 月份 | 門市 | 品項 | 杯數 |
|---|---|---|---|
| 3 月 | 信義 | 蘋果紅茶 | 12 |
| 信義 | 烏龍奶茶 | 7 | |
| 板橋 | 蘋果紅茶 | 9 | |
| 板橋 | 烏龍奶茶 | 11 | |
| 4 月 | 信義 | 蘋果紅茶 | 15 |
| 信義 | 烏龍奶茶 | 4 | |
| 板橋 | 蘋果紅茶 | 8 | |
| 板橋 | 烏龍奶茶 | 13 |
我想知道 3 月賣了幾杯。手算是 12 + 7 + 9 + 11 = 39。如果用 SUMIF 寫,就是:
在月份欄找「3 月」,加總杯數欄
=SUMIF(A2:A10, "3 月", D2:D10)來看看結果:
| 公式 | 結果 |
|---|---|
| SUMIF 算 3 月 | 12 |
只算到 12。「烏龍奶茶 7 杯」這一列自己不知道是幾月,月份在它上面那一格,公式看不到。每一列都要自己把故事講完整,也就是三月、信義、烏龍奶茶、7 杯。
中間那一列空白,是用來隔開月份的,同樣有麻煩。Ctrl+A(Mac 為 Cmd+A,在 Chrome)第一下選的是連續的資料範圍,遇到整列空白就會停,篩選與樞紐分析表也是從一格往外找連續的資料。想分組,請多一欄,不要空一列。
把月份補到每一列,8 筆資料變成這樣:
| 月份 | 門市 | 品項 | 杯數 |
|---|---|---|---|
| 3 月 | 信義 | 蘋果紅茶 | 12 |
| 3 月 | 信義 | 烏龍奶茶 | 7 |
| 3 月 | 板橋 | 蘋果紅茶 | 9 |
| 3 月 | 板橋 | 烏龍奶茶 | 11 |
| 4 月 | 信義 | 蘋果紅茶 | 15 |
| 4 月 | 信義 | 烏龍奶茶 | 4 |
| 4 月 | 板橋 | 蘋果紅茶 | 8 |
| 4 月 | 板橋 | 烏龍奶茶 | 13 |
同一條公式把範圍改成 A2:A9、D2:D9,就會得到 39。
一欄只放一種東西
回到開頭那張好看的月報。「3 月」「4 月」合併在上面,「蘋果紅茶」「烏龍奶茶」在下一層,月份跟品項都躲在標題裡:
| 門市 | 3 月 | 4 月 | ||
|---|---|---|---|---|
| 蘋果紅茶 | 烏龍奶茶 | 蘋果紅茶 | 烏龍奶茶 | |
| 信義 | 12 | 7 | 15 | 4 |
| 板橋 | 9 | 11 | 8 | 13 |
我想找信義店的蘋果紅茶。用 SUMIF 去第 2 列找「蘋果紅茶」,再加總第 3 列:
在第 2 列找蘋果紅茶,加總信義那一列對應的數字
=SUMIF(B2:E2, "蘋果紅茶", B3:E3)結果是 27,也就是 3 月的 12 加 4 月的 15。「蘋果紅茶」在標題出現兩次,「4 月」只寫在 D1,E1 是空的,公式分不出月份。想只拿 4 月,只能寫死 =D3,下個月多一欄,所有公式都要重改。
月份、門市、品項都是「一種東西」,各自該有一欄。上面那份 8 列的清單,用 SUMIFS 就能同時問三個條件:
月份是 4 月、門市是信義、品項是蘋果紅茶的杯數
=SUMIFS(D2:D9, A2:A9, "4 月", B2:B9, "信義", C2:C9, "蘋果紅茶")| 公式 | 結果 |
|---|---|
| SUMIFS 算信義 4 月蘋果紅茶 | 15 |
5 月的資料來了,在清單最下面接新的列就好,把範圍往下拉長,或寫成 D2:D 這種只固定開頭的範圍。月報的寫法則要多插兩欄,再把每條公式改一遍。
標題列只放一層
下圖把三條規則標在同一張清單上:
圖:① 橫著看是一筆銷售,② 直著看是一種屬性,③ 第一列的欄名是整張表的導航。
標題列是公式、篩選、樞紐分析表(Pivot Table)找欄位的依據,我自己的習慣有三點:
- 欄名直接講內容,「杯數」比「欄位 C」好懂,AI 也比較容易看懂。
- 欄名不重複,不要出現兩個「金額」。
- 只放一層,不要第一列寫「3 月」、第二列才寫品項。
好看的留到最後
月報還是可以做。清單當原始資料,要給人看的月報,用樞紐分析表把門市放列、月份放欄,就會排出類似的樣子,教學在 資料透視表。這就是 三層架構 的想法:原始資料不美化,漂亮留給最後一層。
請 AI 寫公式的時候也一樣。資料是清單的話,描述只要一句:「標題在第一列,A 欄月份、B 欄門市、C 欄品項、D 欄杯數」。資料亂的話,AI 只好遷就排版寫出一長串補丁公式,多插一列就壞,提示詞怎麼寫可以看 給 AI 的試算表提示詞。
什麼時候可以不照做?只印出來、之後不再計算的一次性表,隨你怎麼排。只要它不是別人公式的資料來源,合併儲存格也沒關係。
還有一件事,清單的每一列最好有一欄能認得它的編號,像訂單編號。之後要跟別張表對起來,靠的就是這一欄,見 對應關係的概念。
練習
4 月烏龍奶茶共賣幾杯
清單在 A1:D9(欄名依序是月份、門市、品項、杯數),月份寫成 "3 月"、"4 月"。算出兩間門市加起來,4 月烏龍奶茶共賣了幾杯。
答案是 4 + 13 = 17。手上有哪張表是月報風格的?試著拆成清單,再問它一次吧!
我是喜特先生,Mr. Sheet,我們下個教學見!
接下來可以
這篇在技能樹的 Lv.0「核心思維」,模組「資料結構的黃金原則」(第 1/1 篇)。讀完這篇,路線上的下一個模組是「值與格式的分離」。
回到技能樹相關文章
查看所有文章鍵值對應的概念:用編號查品名與牌價,成交價格另外存
用手搖飲的訂單和菜單,說明什麼是鑰匙(Key)與值(Value)、哪種鑰匙好用,以及一把鑰匙對到好幾筆資料時會發生什麼事,替學查找函式先打底。
三層架構入門:把原數據、計算、呈現分到三個分頁
用一份茶飲店月報當例子,示範怎麼把試算表拆成原數據層、計算層、呈現層三個分頁,改一格月份整份報表跟著換,數字不對時也知道從哪一層開始查。
SUMIFS 進階陷阱:多條件、日期區間、萬用字元與 MAXIFS
整理 SUMIFS、COUNTIFS 多條件加總常踩的坑:參數順序和 SUMIF 相反、範圍大小不一致、日期區間與文字日期、OR 條件重複計算、萬用字元與 ~ 跳脫、空白條件,以及 MAXIFS、MINIFS、AVERAGEIFS 與 COUNTUNIQUEIFS。
留言討論
共 0 則留言
