2025年5月23日 星期五

Excel 教學:如何讓 Excel 自動計算文字形式的數學算式?透過 EVALUATE + 定義名稱 來達成!

Excel 是強大的數字工具,但你有沒有遇過這樣的問題:儲存格裡輸入了 5*2 這樣的數學算式(以文字形式儲存),卻發現 Excel 無法直接將它計算出結果 10?

一般來說,Excel 的儲存格需要以 = 開頭才能進行公式計算。如果儲存格內容只是單純的文字字串,即使長得像算式,Excel 也不會自動執行計算。

有朋友問到是否有函式可以直接實現這個功能?很可惜,Excel 的標準函式中並沒有直接對文字算式進行求值的函式。不過,我們可以透過一個鮮為人知的 巨集函式 (Macro Function) ,搭配 定義名稱 的方式來實現這個需求!

由於 EVALUATE 是一個巨集函式,使用這個方法製作的檔案必須儲存為啟用巨集的 Excel 活頁簿 (.xlsm 副檔名) 或較舊的 Excel 97-2003 活頁簿 (.xls 副檔名)。

以下就來看看如何操作:

步驟一:下載範例檔案 (或自行建立)

您可以從影片中提供的連結下載範例檔案來練習:

https://drive.google.com/file/d/1-3BgcZ1v_XEniZlpYdmFekaBNTysruoP/view


(範例檔案名:
Excel計算文字算式EVALUATE.xls

下載後開啟檔案,可能會看到需要啟用編輯和啟用巨集的功能提示,請依照提示啟用。

步驟二:了解 EVALUATE 的應用方式 (透過定義名稱)

直接在儲存格輸入 =EVALUATE(A1) 是無效的,Excel 會提示函式名稱無效。EVALUATE 必須透過 定義名稱 來使用。

在範例檔案中,已經定義了一個名稱叫做 calc。您可以透過「公式」>「名稱管理員」來查看。

你會看到一個名稱叫做 calc,它的「參照到」內容可能是類似 =EVALUATE('工作表3'!A1) 的格式。請注意,雖然這裡顯示了特定的儲存格位址,但當你實際在其他儲存格使用這個定義名稱時,Excel 會聰明地將其視為相對參照。也就是說,如果你在 B1 儲存格輸入 =calc,它會自動計算 A1 的內容;在 B2 輸入 =calc,就會計算 A2 的內容。

步驟三:建立你自己的定義名稱 (如果不想用範例檔案)

如果你想在自己的空白活頁簿中實現,可以這樣做:

  1. 打開 Excel 活頁簿。

  2. 在儲存格 A1 到 A5 (或其他你想放文字算式的儲存格) 輸入一些文字算式,例如:

    • 2*3+1

    • 2+3+4

    • 0.0606*500

    • 5*2*3

    • 200-3-2+1

  3. 選取你希望顯示計算結果的儲存格(例如 B1)。

  4. 點擊「公式」索引標籤。

  5. 在「已定義的名稱」群組中,點擊「定義名稱」。

  6. 在彈出的「新名稱」對話框中:

    • 名稱(N): 輸入一個你喜歡的名稱,例如 計算 (Jìsuàn) 或 Calc (請避免使用 Excel 內建的函式名稱)。

    • 參照到(R): 輸入 =EVALUATE(A1)。這裡的 A1 是相對於你剛才選取的儲存格 (B1) 的位置(也就是說,如果你選取 B1,輸入 A1 就會自動參照到 A1 的內容)。

  7. 點擊「確定」。

步驟四:使用定義名稱計算文字算式

  1. 在你希望顯示計算結果的儲存格 (例如 B1) 中,輸入 = 後面接著你剛剛定義的名稱,例如 =calc

  2. 按下 Enter 鍵,你會發現 B1 儲存格顯示了 A1 算式的計算結果 (7)。

  3. 將 B1 儲存格的右下角小方塊往下拉,你會看到其他儲存格的文字算式也被自動計算出來了!

步驟五:儲存檔案注意事項

由於這個功能使用了巨集函式,儲存檔案時必須選擇支援巨集啟用的檔案格式:

  1. 點擊「檔案」>「另存新檔」。

  2. 選擇儲存位置。

  3. 在「存檔類型(T)」下拉選單中,選擇 「啟用巨集的 Excel 活頁簿(*.xlsm)」 或 「Excel 97-2003 活頁簿(*.xls)」

  4. 輸入檔案名稱,然後點擊「儲存」。

下次開啟這個檔案時,Excel 會提示你啟用內容 (也就是啟用巨集),請務必啟用,否則定義名稱將無法正常運作。

結論

透過 EVALUATE 巨集函式和定義名稱的巧妙搭配,我們可以讓 Excel 計算文字形式的數學算式,這在某些特定情境下非常方便。不過也要提醒,由於涉及巨集,開啟不明來源的啟用巨集檔案可能存在安全風險,請確保檔案來源可靠。

希望這個教學對您有幫助!如果您有其他 Excel 相關問題,也歡迎提出來討論。




沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。

Google Sheets 教學:輕鬆將表單多選結果拆分成多筆資料 (FLATTEN, SPLIT, QUERY 組合應用)

前言 您是否也曾遇過這樣的困擾?當您使用 Google 表單的「核取方塊」讓使用者進行多重選擇後,收集到的回覆在 Google Sheets 中會將所有選項擠在同一個儲存格裡,並用逗號隔開。例如,一個訂單表單中,客戶可能在「購買口味」欄位中一次選擇了「原味, 粉光, 人蔘」。 這...