這個問題來自 Notion 系統課程讀者的提問,經整理後分享於此。如果你在使用 Notion 的過程中遇到了類似問題,歡迎留言交流。
讀者提問
你好,請問為什麼我這個只顯示第一個 condition(如果「start」有數值,就加一天),後面多個複合條件的結果設置無效(如果 start 和 day1 同時有數值,就加 2 天,以此類推),單複合條件的沒設置成功是為什麼?

我的回答
首先,用來判斷某個欄位是否為空值,最好是用 empty() 這個函數,當欄位是空值時,empty("Property XX") 會得到 true 的值,例如:

利用這個特性,我們就可以構造這樣的一個函數來滿足你的需求:
if(
prop("Start").empty()==true,"未启动".style("b","red"),
lets(
a,if(prop("Start").empty()!=true,1,0),
b,if(prop("Day 1").empty()!=true,1,0),
c,if(prop("Day 2").empty()!=true,2,0),
d,if(prop("Day 4").empty()!=true,4,0),
e,a+b+c+d,
dateAdd(prop("Start"),e,"days")
)
)具體效果如下:

函數解析
lets 函數內部定義了以下變數:
a = if(Start 不為空, 回傳 1, 回傳 0)
b = if(Day 1 不為空, 回傳 1, 回傳 0)
c = if(Day 2 不為空, 回傳 2, 回傳 0)
d = if(Day 4 不為空, 回傳 4, 回傳 0)
e = a + b + c + d (把上面的值都加起來)最後一行:
dateAdd(prop("Start"), e, "days")
- 從 Start 日期開始
- 加上 e 的值
- 單位是天數
參考模板
關聯閱讀
- Notion 函數基礎入門(一):用四則運算理解 Formula 的基本特性與用法
- Notion 函數基礎入門(二):掌握更自由的打卡統計與日期間隔計算
- Notion 函數基礎入門(三):複雜邏輯判斷與自訂進度條
- 詳細解讀 Notion Formula 2.0,10+ 個新特性與新函數讓 Notion 更強大更好用
📘 FLO.W 思流 — Notion 個人管理系統
FLO.W 是一套基於 Notion 搭建的個人管理模板,整合了任務、筆記、項目、習慣等模組,並配有完整的圖文影片教程。
開箱即用的 Notion 模板系統
配套圖文影片教程,新手友好
持續更新,長期維護
了解 FLO.W 思流模板✨ 已有 1237+ 位用戶選擇 FLO.W


