作者JieJuen (David)
看板Office
標題Re: [算表] 計算儲存格內()內數字的合計
時間Thu Nov 19 22:16:15 2009
這是一個經典問題
(
#17Ida0Ax 有提到 不過連結似乎失效了)
重新找了一下
有一些絕妙的方法 如
=SUMPRODUCT(--TEXT(MID(TEXT(MID(SUBSTITUTE(A1,")",REPT(" ",15)),ROW($1:$99),
15),),2,15),"0;;;!0"))
另外還有宏表函數用EVALUATE的方法
把 ( 和 ) 取代成 ; 變成數值陣列求和
http://club.excelhome.net/viewthread.php?action=printable&tid=350829
※ 引述《ljuber (即戰力之豆花妹護衛隊)》之銘言:
: 軟體:excel
: 版本:任何版本
: 如果我在A1儲存格內打
: 書本(100)+早餐(50)+午餐(70)+飲料(20)
: 如何在b1儲存格把()內的數字相加
: 而且下次打不一樣的東西
: 例如早餐(50)+文具(100) 也都會去判斷()內的數字去相加?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.47.12.233
1F:→ windknife18:J 大看得真的很多說 11/19 22:35
2F:→ JieJuen:網路上"牛人"很多啊~ ^^ 11/19 22:41
3F:推 ljuber:厲害的公式 不過似乎有長度限制 要更改的話要怎麼改? 11/19 23:47
4F:推 ljuber:是否改row($1:$99) 把它放大? 11/19 23:51
5F:推 Tenka:"0;;;!0" 這哪一招阿...@@ 11/20 01:00
6F:→ windknife18:我先嘗試解釋看看, text(range,"正;負;零;文字") 11/20 09:45
7F:→ windknife18:所以 "0;;;!0" 應該是將正數用數字表示,文字用0表示 11/20 09:47
8F:→ windknife18:所以刮號內有負或零的可能會有問題可改用 "0;-0;0;!0" 11/20 09:50
9F:→ JieJuen:完全正確~連結裡有解答 另放大可用ROW($1:$999) 11/20 18:43
10F:→ JieJuen:至於連結內容太多 備份於 11/20 18:45
本想用INDIRECT精確調整長度 但超過七層巢狀... 除非大約算
=SUMPRODUCT(--TEXT(MID(TEXT(MID(SUBSTITUTE(A1,")",REPT(" ",15)),
ROW(INDIRECT("1:"&LEN(A1)*5)),15),),2,15),"0;;;!0"))
※ 編輯: JieJuen 來自: 114.47.12.233 (11/20 19:38)
11F:推 Tenka:真的很神 11/21 01:50