回 BIMTeki 官網
Esc
教學文件 表格工具
本頁內容

插入運算式

更新於 115 年 09 月 10 日

自動文字讓表格能顯示「BIMTeki 已經算好的值」;但實務上常常會遇到現成欄位裡沒有、必須自己算一下的數字——例如「基地面積 × 建蔽率=允建建築面積」、「允建容積 − 設計容積=剩餘可建容積」、「總樓地板面積 ÷ 戶數=平均每戶面積」。

以前只能自己按計算機、把結果打成死字,之後專案一改就得回頭逐格修改。運算式就是為了解決這件事:它讓儲存格裡放的是一條「算式」而不是一個數字,算式的運算元可以直接引用自動文字,等到放置表格或按下「更新自動文字」時,BIMTeki 會用最新的數值重新算一次。

一句話:自動文字是「取值」,運算式是「取值之後再算」。

使用前提:先進入儲存格編輯模式

「插入運算式」是把一段算式插進游標所在的位置,所以它要求您先明確告訴它「要插在哪一格的哪個位置」:

1
在表格編輯器中雙擊目標儲存格,進入編輯模式(游標會出現在格內)。
2
把游標移到您希望算式出現的位置(可以是空白格的開頭,也可以是一段文字的中間)。
3
再點工具列的「插入運算式」。

若只是「選取」了儲存格而沒有雙擊進入編輯、或編輯已經結束太久,工具會擋下並提示:

系統訊息
「請先雙擊儲存格進入編輯模式,將游標放在要插入的位置,再使用「插入運算式」。」

這是刻意的設計——避免在您沒有指定位置的情況下,把算式亂塞到格子尾端。

開啟方式

在表格編輯器的工具列上,「插入運算式」是一顆計算機圖示的按鈕,位置在「插入自動文字」的右邊、「插入判斷式」的左邊(工具列分區的說明見〈編輯樣板表格〉)。

點下後會跳出「插入運算式」對話框。

表格編輯器工具列中段的四顆按鈕:左為井字號的「插入自動文字」,第二顆計算機圖示「插入運算式」以紅框標出,右邊依序為「插入判斷式」與「樣板屬性設定」

「插入運算式」對話框

對話框分成左右兩欄,底部是「取消/確定並插入」:

區域內容用途
左欄:數值自動文字搜尋框 + 樹狀清單挑要當運算元的自動文字
右欄上:運算式顯示您目前組出來的算式邊組邊看
右欄中:比較符號列> ≥ < ≤ = ≠、且、或只給 if( 函式的條件用(見下文〈函式〉)
右欄中:數字鍵盤0–9、小數點、+ − × ÷、括號、退格、清除、min/max/if、逗號輸入數字、運算符號與函式
右欄下:結果處理四捨五入/無條件進位/無條件捨去/不進位 + 位數決定結果怎麼收尾
右欄底:預覽這條算式現在算出來是多少插入前先確認
「插入運算式」對話框:左欄標題「數值自動文字」,底下是「搜尋自動文字」欄位與分類清單(各層樓地板面積、屋突面積檢討、通風採光檢討、容積檢討、建築概要、建蔽率相關、基地概要、停車位數檢討、綠化面積檢討、ArkiTeki 專案資訊、樓梯資訊、自訂面積項目檢討);右欄標題「運算式」,底下是空的算式框並提示「點選左側自動文字與下方按鍵組成運算式」,其下一列比較符號(> ≥ < ≤ = ≠、且、或,目前全部變灰),再往下是 0–9、小數點、÷ × − +、括號、退格、「清除」與 min( max( if( , 的數字鍵盤(尚未輸入任何東西,所以四則符號、右括號、退格、清除與逗號呈灰色,只有數字、小數點、負號、左括號與三個函式鈕可按),接著「結果處理」四個單選項(四捨五入已選、無條件進位、無條件捨去、不進位)與「位數 2」,最下方「預覽」顯示「—」;對話框右下角為「取消」與「確定並插入」

組一條運算式

三種輸入方式可以混用
點左欄的自動文字:該欄位會以一顆「膠囊標籤」的樣子加進運算式(顯示的是欄位名稱,例如「基地面積」,不是一長串代碼)。
點右欄的數字鍵盤:輸入數字、小數點、四則運算符號與括號。
直接用鍵盤打字09.+-*/(),、比較符號與英文字母(用來手打 minmaxifandor)都可以直接敲;Backspace 等同退格鍵。(游標若停在左上角的搜尋框或「位數」欄位內時,鍵盤輸入會進到該欄位,不會進運算式。)

運算式顯示區裡,乘除會美化成 ×÷ 比較好讀,實際運算不受影響。

「插入運算式」對話框:左欄搜尋框已輸入「基地面積」,清單只剩一筆「面積:基地面積總計」,其下顯示目前值 93.00 與所在路徑「基地概要 / 土地面積 / 面積:基地面積總計」;右欄運算式框內是一顆紫色膠囊「面積:基地面積總計」加上「×0.6」,結果處理選「四捨五入」、位數 2,最下方預覽顯示「55.8」
找不到欄位就用搜尋

左欄上方有搜尋框,輸入「面積」、「容積」、「停車」等關鍵字即可縮小範圍;清單本身也是與側欄「插入自動文字」相同的樹狀分類,可逐層展開。

退格與清除
退格:從尾端刪掉一個單元。要注意的是,一顆自動文字標籤算「一個單元」,退一次就整顆消失,不會只刪掉半個欄位名稱。
清除:把整條運算式清空重來。

運算式只能從尾端增刪,不能把游標插到算式中間去改。想調整中段內容時,退到該處重打會比較快;算式很長時,也可以先按「清除」重組。

按鍵會依目前算式自動開關

鍵盤上的按鈕會依您目前組到哪裡自動變灰或恢復,避免組出算不出來的式子:

一開始、或剛按過運算符號、左括號、逗號時,只能輸入數字、小數點、左括號、函式,或從左欄插入自動文字;四則符號與右括號會變灰(負號保留給負數)。
已經有數字或自動文字之後,才能按四則符號、逗號與右括號;此時左欄清單會整份變灰,避免出現「5基地面積」這種數字與欄位相鄰的情況。
比較符號與「且/或」只在 if( 的條件段開放;逗號與右括號要等函式的參數填夠才會亮。

變灰只是引導,直接用鍵盤打字不受限制。

函式的灰字提示

按下 min(max(if( 之後,算式框尾端會出現灰色提示文字,告訴您接下來還要填哪些參數、還差幾個右括號:按 if( 後顯示「條件, 成立值, 不成立值)」,填完條件後縮成「, 成立值, 不成立值)」。灰字只是提示,不會被寫進儲存格。

函式:min、max 與 if

除了四則運算,鍵盤上還有三個函式按鈕,對應法規檢討常見的三種需求:

按鈕寫法用途例子
min(min(甲, 乙)取兩者較小,用在「最多以⋯計」的上限保水量最多以基準值計:min(設計保水量, 基準保水量)
max(max(甲, 乙)取兩者較大,用在「不得低於⋯」的下限最小綠化面積不得低於基地面積 15%:max(算出的綠化面積, 基地面積 × 0.15)
if(if(條件, 成立值, 不成立值)依條件決定用哪個數字,做分段計算超過 500 ㎡ 的部分乘 0.5:if(面積 > 500, (面積 − 500) × 0.5, 0)

使用時的重點:

參數之間用鍵盤上的「,」隔開;minmax 也可以放兩個以上的參數。
if( 的條件用比較符號列組成(>、≥、<、≤、=、≠),兩個條件要同時成立時用「且」、擇一時用「或」;成立值與不成立值只能是數字或算式。
if( 可以巢狀,例如三段級距:if(面積 <= 500, 60, if(面積 <= 1000, 55, 50))
這些函式算出來的仍是數字,一樣套用「結果處理」的進位設定。若您要的是「符合/不符合」這種文字結論,請改用〈插入判斷式〉。
相等比較(=)容易被小數尾差影響,請先用進位函式處理再比較,例如 roundn(甲, 2) = roundn(乙, 2)

結果處理:四捨五入、進位、捨去

算完之後要不要進位、要保留幾位小數,由「結果處理」這一列決定:

選項效果
四捨五入依「位數」四捨五入
無條件進位依「位數」無條件進位(往大的方向)
無條件捨去依「位數」無條件捨去(往小的方向)
不進位不指定進位方式

位數欄位可填 0~4,預設是 2(即小數點後兩位)。填 0 就是取到整數。

關於「不進位」:這個選項的意思是「算式本身不加上進位指令」,並不是「完全不做處理」。表格在顯示數值時本來就有預設格式——未指定進位方式時,結果會以四捨五入到小數點後 2 位呈現,並自動去掉尾端多餘的零(例如 120.50 顯示成 120.5120.00 顯示成 120)。也因為如此,選「不進位」時「位數」欄位不會生效。
若您對小數位數有明確要求(例如面積一律取到小數 2 位、車位數一律取整數),請直接選前三個選項並填好位數,不要依賴預設值。

實務上的取捨習慣可以參考:

面積上限類(允建建築面積、允建容積樓地板面積)→ 常用無條件捨去,避免超出。
應設數量類(應設車位數、應植喬木數)→ 常用無條件進位,避免不足。
一般展示數值(平均每戶面積、比率換算)→ 四捨五入 即可。
實際該進位還是捨去,仍以各地方主管機關的審查規定與貴事務所的慣例為準;BIMTeki 只提供三種方式讓您選擇。

即時預覽:插入前先確認算得出來

對話框底部的「預覽」會顯示這條算式現在算出來的結果。您每動一次(按鍵盤、加欄位、換進位方式、改位數),系統會在停手約 0.3 秒後自動重算一次。

幾個重點:

預覽是用目標儲存格的樓層/居室綁定去算的。也就是說,如果您是在「A 棟 1F」那一格叫出對話框,預覽看到的就是 A 棟 1F 的數字。
運算式還是空的時候,預覽顯示「—」。
算不出來時,預覽會以警示樣式(紅字)顯示錯誤訊息,例如 [公式錯誤],或把整段算式帶殼顯示出來。看到紅字就先別按確定,回頭檢查算式(常見原因見下文〈看到奇怪的結果怎麼辦〉)。
「插入運算式」對話框的右半部:運算式框內為紫色膠囊「面積:基地面積總計」加上「×0.6×」,尾端多了一個沒有接運算元的乘號;結果處理選「四捨五入」、位數 2;最下方預覽以紅字顯示「[公式錯誤]」

確認沒問題後按「確定並插入」,對話框關閉,算式就會插進您先前指定的游標位置。

哪些自動文字可以放進運算式?

只有「數值類」的自動文字可以當運算元。BIMTeki 依內容性質把自動文字分成幾種,其中三種能進運算式:

內容性質可否用於運算式例子
面積✅ 可以基地面積、樓地板面積、綠化面積
數量✅ 可以戶數、層數、停車位數
比率✅ 可以建蔽率、容積率
算式❌ 不行「算式:⋯」這類本來就是一整串計算過程的展示字串
檢討式❌ 不行「⋯是否符合」、「⋯檢討」這類結論字串
文字❌ 不行業主姓名、使用分區、地號
陣列❌ 不行會自動展開成多列/多欄的資料

所以「插入運算式」對話框的左欄只會列出面積、數量、比率三類,其他類型根本不會出現在清單裡——不必擔心挑錯。

比率與單位會自動處理

這一點讓算式寫起來很直覺:

百分比自動換算成小數:建蔽率顯示為 60.00%,代入算式時自動變成 0.6。所以「基地面積 × 建蔽率」可以直接寫,不必再自己除以 100。
面積單位自動剝除123.45 m²123.45 ㎡ 代入時只取數字。
千分位自動剝除1,234.5 代入時視為 1234.5

反過來說,如果某個欄位的值是「符合」、「不適用」這類文字,或帶著別的單位,就無法當成數字參與運算。

插入之後:算式在表格裡長什麼樣

插入完成後:

平常看:儲存格顯示的是算出來的數值,和一般自動文字沒兩樣。
雙擊進去編輯:才會看到算式的原貌——它是一段以 {= 開頭、} 結尾的文字,中間夾著自動文字膠囊與數字。例如:
{=floorn(基地面積 × 0.6, 2)}
雙擊進入編輯模式的儲存格,格內顯示算式原貌「{=roundn(面積:基地面積總計*0.6, 2)}」,其中「面積:基地面積總計」以淡紫色底標示,代表那是一筆自動文字

其中 floorn 代表無條件捨去、ceiln 代表無條件進位、roundn 代表四捨五入,括號內最後那個數字就是您指定的小數位數。

一格可以有文字,也可以有多段算式

算式片段可以和一般文字自由穿插,一個儲存格裡也可以放好幾段。這讓您能做出「連文字帶算式」的檢討句,例如:

允建建築面積 {=floorn(基地面積 × 建蔽率, 2)} ㎡

放置到圖面後,這格就會顯示成「允建建築面積 607.2 ㎡」,而且會隨基地面積或建蔽率的變動自動更新。

修改既有的算式

「插入運算式」每次開啟都是空白的新算式,它不會把您點到的那格既有算式讀進來編輯。要改既有算式,有兩種做法:

直接在格內改:雙擊進入編輯模式,像改一般文字一樣修改算式中的數字、運算符號或進位指令。
重來一次:把整段算式選起來刪掉,再用「插入運算式」重新組一條。

要在既有算式裡再加一個自動文字欄位時:把游標移到算式內部({=} 之間),再從側欄的「插入自動文字」面板挑選即可。這時面板會自動進入「算式模式」——非數值類的項目會變灰、無法點選,避免您插入無法計算的欄位。若硬要插入,會出現提示:

系統訊息
「公式內只能插入數值類自動文字(面積/數量/比率)。」

運算式裡也不能再插入另一段運算式或判斷式:游標停在算式內部時按這兩顆工具列按鈕會被提示擋下。要在一條算式裡做條件計算,用 if( 函式即可。

什麼時候會重算?

和一般自動文字完全一致:

放置表格到圖面時:以放置當下的專案資料計算。
執行「更新自動文字」時:重新以最新資料計算一次。

也就是說,運算式的結果不是寫死的,它跟表格裡其他自動文字一樣,會在您按下「更新自動文字」時一起刷新。詳見〈更新自動文字〉。

看到奇怪的結果怎麼辦

畫面上顯示代表什麼怎麼處理
[公式錯誤]算式語法有問題(括號沒配對、運算符號連續兩個⋯),或發生除以零回編輯器檢查算式;除以零多半是分母欄位目前還沒有值(例如戶數尚未填)
[無此值]算式裡引用的欄位在目前專案找不到(欄位被刪、或樣板來自別的專案)刪掉該欄位重新插入正確的自動文字,或改用其他來源
整段 {=⋯} 原樣顯示,中間夾著文字算式裡有欄位代入後不是數字(例如不小心塞進文字類欄位、或該欄位目前顯示「不適用」)把該欄位換成數值類欄位,或確認來源工具是否已有資料

這三種狀況在編輯器的預覽列就看得到,所以養成「按確定前先看一眼預覽」的習慣,可以省掉很多回頭修的時間。

用不了的情況

陣列自動文字的區域:陣列會自己展開成多列多欄,這些格子不接受插入算式,會出現提示「此儲存格屬於陣列自動文字區域,無法插入運算式。」需要衍生數值時,請放在陣列區域的格子。
唯讀狀態:樣板在唯讀狀態下(例如內建範本樣板)無法編輯,按鈕不會有反應。請先複製一份到「專案樣板」或「外部樣板」再編輯。

操作小提示

先想清楚「用哪一格的脈絡」:預覽與最終結果都是依「插入算式的那一格」所綁定的樓層/居室去算。要做逐層的衍生數值時,記得該格的樓層屬性要設對(或設成「依樣板」)。
能用現成欄位就別自己乘:BIMTeki 各檢討工具已經算好的值(建蔽率檢討、容積檢討、綠化檢討⋯)請優先直接插入,運算式留給「真的沒有現成欄位」的情況。自己重算一次,反而多了一個對不起來的風險。
括號用滿一點:算式一長就容易搞混優先順序,(A + B) × C 這樣明確寫出來,比依賴預設運算順序保險。
位數不要留給預設值:對出圖有要求的欄位,明確選好進位方式與位數,別讓它落在預設的「四捨五入 2 位」。
算式也可以請 AI 幫忙寫:編輯器的「AI 樣板編輯」面板同樣支援運算式,您可以直接描述「允建建築面積這格請用基地面積乘建蔽率、無條件捨去到小數 2 位」,讓它代勞。細節見〈編輯樣板表格〉。

接下來該看哪一篇?

這篇有幫助嗎?