[算表] 按照選定的類型,執行不同的公式運算

看板Office作者 (wkday)時間2年前 (2022/02/15 22:53), 編輯推噓6(6051)
留言57則, 5人參與, 2年前最新討論串1/1
軟體:Excel 版本:Office365 在做一個多項目的計價檔案,簡化後如下圖: https://imgur.com/b5RtaEx
每個項目都可以由使用者選定計價方式, 每個「計價方式」都對應獨有的「計價公式」, 目前計價方式大概有十多種,之後還會繼續增加。 已知選定了「計價方式」後,可以用vlookup等方法找到對應的「計價公式」; 但目前卡在,不知道怎樣能按照「計價公式」來執行「運算」以計出金額。 所以想請教各位大大有沒有較好的辦法。 備註: 1.最終用家是其他同事,希望可以使用方便。 2.希望不要用到巨集或vba。 先謝謝各位!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.246.230.47 (澳門) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1644936796.A.DD2.html

02/16 03:52, 2年前 , 1F
[G2]==IFS(B2="a",D2*E2,B2="b",(C2+D2)/100,B2="c",C2
02/16 03:52, 1F

02/16 03:52, 2年前 , 2F
,B2="d",C2+D2,B2="e",C2+D2+E2+F2)
02/16 03:52, 2F

02/16 03:53, 2年前 , 3F
^多打一個= 從這個等號開始輸入 位於G2位置
02/16 03:53, 3F

02/16 03:54, 2年前 , 4F
抱歉 沒看完題目 此方法不好用
02/16 03:54, 4F

02/16 04:06, 2年前 , 5F
用 INDIRECT 搭配文字
02/16 04:06, 5F

02/16 04:06, 2年前 , 6F
搭配row()
02/16 04:06, 6F

02/16 05:01, 2年前 , 7F
後來研究一下 不可行 請高手救援=,=
02/16 05:01, 7F

02/16 05:02, 2年前 , 8F
本來想用EVALUATE 但發現這是vba
02/16 05:02, 8F

02/16 05:17, 2年前 , 9F
EVALUATE 要用兩次 才能破row()的計算
02/16 05:17, 9F

02/16 05:22, 2年前 , 10F
google "excel EVALUATE" 設定名稱的時候
02/16 05:22, 10F

02/16 05:22, 2年前 , 11F
要用兩次EVALUATE 搭配row()方法 與vlookup 應該有破
02/16 05:22, 11F

02/16 05:22, 2年前 , 12F
解的方式
02/16 05:22, 12F

02/16 07:49, 2年前 , 13F

02/16 07:50, 2年前 , 14F
29YINu5Dz_6SY--JTuDaJL4O9_XuA3?usp=sharing
02/16 07:50, 14F

02/16 07:50, 2年前 , 15F
上面合起來 做的很勉強檔案不一定有用 望強者大大幫忙
02/16 07:50, 15F

02/16 10:29, 2年前 , 16F

02/16 10:31, 2年前 , 17F
G2 的公式可以使用 Ctrl+F3 查看
02/16 10:31, 17F

02/16 11:55, 2年前 , 18F

02/16 11:55, 2年前 , 19F
加入自動更新機制
02/16 11:55, 19F

02/16 13:36, 2年前 , 20F

02/16 13:39, 2年前 , 21F
圖片左下G2=offect($a$1,match(b2,...才對
02/16 13:39, 21F

02/16 13:43, 2年前 , 22F

02/16 13:43, 2年前 , 23F
再重發一次
02/16 13:43, 23F

02/16 22:03, 2年前 , 24F
謝謝waiter337,windknife18和rafaiero三位,會好好研究看看
02/16 22:03, 24F

02/17 03:10, 2年前 , 25F
想用offset和indirect(“RC”,0)結果卡在奇怪的地方==
02/17 03:10, 25F

02/17 03:11, 2年前 , 26F

02/17 03:12, 2年前 , 27F
H2是定義名稱 名稱公式是evaluate(I2)
02/17 03:12, 27F

02/17 03:12, 2年前 , 28F
想請問是哪裡出錯呢
02/17 03:12, 28F

02/17 11:45, 2年前 , 29F
B3 不能有""
02/17 11:45, 29F

02/17 16:06, 2年前 , 30F
謝謝w大幫忙 但還是顯示錯誤
02/17 16:06, 30F

02/17 16:07, 2年前 , 31F

02/17 16:08, 2年前 , 32F
試了offset沒有問題 請問是indirect哪裡還需要調整嗎
02/17 16:08, 32F

02/17 16:09, 2年前 , 33F
名稱公式一樣 是對右方儲存格evaluate
02/17 16:09, 33F

02/17 22:05, 2年前 , 34F
indirect(“b”&3)
02/17 22:05, 34F

02/17 22:24, 2年前 , 35F
名稱管理員要用兩次evaluate
02/17 22:24, 35F

02/17 22:24, 2年前 , 36F
我的檔案內有 =evaluate(evaluate(I2))
02/17 22:24, 36F

02/17 22:25, 2年前 , 37F
我模糊的解釋一下 因為我也不是完全清楚
02/17 22:25, 37F

02/17 22:27, 2年前 , 38F
針對公式上 分為兩種 一種是參照查閱 一種是運算
02/17 22:27, 38F

02/17 22:27, 2年前 , 39F
若你的公式內 同時都有 他只會優先處理 參照查閱的部分
02/17 22:27, 39F

02/17 22:27, 2年前 , 40F
或者說 邏輯運算 只能執行一次
02/17 22:27, 40F

02/17 22:28, 2年前 , 41F
所以 當你的公式內有邏輯運算+查閱參照的情況
02/17 22:28, 41F

02/17 22:28, 2年前 , 42F
evaluate無法一次處理 就必須給他再執行一次
02/17 22:28, 42F

02/17 22:29, 2年前 , 43F
或者說 不能參照兩次
02/17 22:29, 43F

02/17 22:29, 2年前 , 44F
這我沒弄很清楚 你必須自己實測
02/17 22:29, 44F

02/17 22:30, 2年前 , 45F
你可以把indirect(b3) 再做第二組的evaluate 就能執行
02/17 22:30, 45F

02/17 22:30, 2年前 , 46F
所以我用了兩組evaluate
02/17 22:30, 46F

02/17 22:30, 2年前 , 47F
但這樣當下又會陷入一個奇怪的問題
02/17 22:30, 47F

02/17 22:30, 2年前 , 48F
我的檔案當中就遇到一個 如果只有(b3) 用了兩次參照
02/17 22:30, 48F

02/17 22:31, 2年前 , 49F
就會產生錯誤
02/17 22:31, 49F

02/17 22:31, 2年前 , 50F
用兩次evaluate 就會錯誤
02/17 22:31, 50F

02/17 22:31, 2年前 , 51F
因為他被(b3) > 值 > 執行錯誤
02/17 22:31, 51F

02/17 22:32, 2年前 , 52F
這時候 就要給他來個 0+(b3) 讓她不只有參照 還多運算
02/17 22:32, 52F

02/17 22:32, 2年前 , 53F
那就能正常做兩次計算
02/17 22:32, 53F

02/17 22:32, 2年前 , 54F
所以windknife18的寫法非常厲害唷
02/17 22:32, 54F

02/18 00:07, 2年前 , 55F
謝謝w大解說
02/18 00:07, 55F

02/18 00:07, 2年前 , 56F
晚上爬了一些關於這兩個函數互動的文章沒什麼收穫 確實只
02/18 00:07, 56F

02/18 00:07, 2年前 , 57F
能多嘗試
02/18 00:07, 57F
文章代碼(AID): #1Y2xvStI (Office)
文章代碼(AID): #1Y2xvStI (Office)