Yahoo Answers is shutting down on May 4th, 2021 (Eastern Time) and beginning April 20th, 2021 (Eastern Time) the Yahoo Answers website will be in read-only mode. There will be no changes to other Yahoo properties or services, or your Yahoo account. You can find more information about the Yahoo Answers shutdown and how to download your data on this help page.

excel 函數

輸入 大 金額 小 金額 小計 35大4小3B+2 35 100 4 50 3700 35大4小+2 35 100 4 50 3700 35大3B+2 35 100 0 50 3500 150大+10 150 100 10 50 15500 8大 8 100 0 50 800 4大1小 4 100 1 50 450

(1~3位數)大 (0~1位數)小 (0~1位數)B + (1~2位數)

問問:

1.大&小的欄位如何寫!? (ex. 當輸入 35大4小3B+2 "大" 欄位的35& "小" 欄位的4 會自動顯示 ) <"大"欄位是 =LEFT(輸入格,FIND("大",輸入格)-1) > "小"欄位如何選寫!?

2. 輸入欄的 自定格式 如何設定

當我打 35432 按Enter 會自動顯示 35大4小3B+2

打80000 8大

3. 承 1. 2. 兩個有辦法合併嗎!?

Update:

阿~~~對~~~D5是0才對

承本題

那有沒有辦法

輸入 全票 金額 半票 金額 小計

8 8 100 0 50 800

2+3 5 100 0 50 500

2+2+2 6 100 0 50 600

Update 2:

(意: 當沒出現"大"或"小" 時 , 直接加總 算全票<大>)

Update 3:

2B= 2Baby

Update 5:

回答1. 就好~~~

4 Answers

Rating
  • 9 years ago
    Favorite Answer

    題1:

    B2=-LOOKUP(,-RIGHT(LEFT($A2&"0"&B$1,FIND(B$1,$A2&"0"&B$1)-1),{1,2,3}))

    下拉

    複制B2公式貼在D2, 下

    題2: 無法自定格式, 此法不能有函數公式作任何判斷

    2012-11-12 21:41:37 補充:

    謝Daniel大師提醒, 原公式對輸入內容的尾位是數字會發生作用, 故在0之前要加上一個非數字的字元, 如 空格, 符號, 英文, 中文均可

    個人認為加一個較為注目的字元較好, 因空格容易走漏眼, 在輸入或抄寫公式時被忽略

    2012-11-12 21:52:04 補充:

    =-LOOKUP(,-RIGHT(LEFT($A2&"?0"&B$1,FIND(B$1,$A2&"?0"&B$1)-1),{1,2,3}))

    公式對先小後大, 祇有小, 甚至大小都沒有, 均通用

    數字祇出3位數, 如有4位數或以上, {1,2,3}改成{1,2,3,4,..n}便可以

    供參考附件: http://www.funp.net/102814

    題目中的D5出錯

    2012-11-13 09:52:29 補充:

    樓主必須將所有輸入的內容種類一次性列出, 及說明其結構及要求的計算結果

    如2B代表什麼, 2 babies?

    另: 輸入部分文字2+2+2, 要求是6, 是有難度

    最好有附件

    2012-11-13 21:55:19 補充:

    附件輸入的內容, 毫無一致性的規律/定義/次序/字數/參照, 如此設計, 該打一百大板。

    此題應重新設計輸入內容, 賜與有一致性的規律, 或增加欄位, ,遠勝於追求公式(公式會相當長, 不一定能解決, 而且此類公式是完全沒有通用性) 如一致的字數及先後次序, 特別要留意, 不要有1+1+1這類計算式放在一組文字上

    如輸入內寄不能改變, 建議學VBA寫電腦程序

    2012-11-15 22:53:07 補充:

    根據原題目, 祇計算大小

    B2=-LOOKUP(,-RIGHT(LEFT($A2&"?0"&B$1,FIND(B$1,$A2&"?0"&B$1)-1),{1,2,3}))

    將B2再複製到D2, 再將B2及D2向下拉, 請參考附件Sheet1

    樓主補充, 想將公式計算輸入的算式, 如1+2+3=6, 加在大的數量

    在此, 先作限制, 此算式必須置尾, 如3大6小+4+5+6=18大 6小

    由於工作表函數是沒法將文字公式計算, 祇可用巨集函數Evaluate, 放在定義名稱

    方法是:

    用滑鼠點選Sheet2的B2, 再按 Ctrl + F3兩鍵, 出定義名稱視窗名稱輸入 plus參照到 輸入 =EVALUATE(MID(Sheet2!A2,FIND("+",Sheet2!A2)+1,99))按確定, 定義名稱完成B2公式改為:=-LOOKUP(,-RIGHT(LEFT(Sheet1!$A2&"?0"&B$1,FIND(B$1,Sheet1!$A2&"?0"&B$1)-1),{1,2,3}))+IF(COUNT(FIND("+",A2)),plus,0)將B2向下拉請參考附件Sheet2http://www.funp.net/825348

  • 喔喔是這樣喔~~

    感謝你~~

    那個附件

    確實有幫助到~~~

    阿不過你只有回復在意見~~

    怎麼選你

  • Daniel
    Lv 7
    9 years ago

    漢大的公式,在D4會變20,建議改為:

    =-LOOKUP(,-RIGHT(LEFT($A2&" 0"&B$1,FIND(B$1,$A2&" 0"&B$1)-1),{1,2,3}))

  • 9 years ago

    1.依你的題意是否每個輸入的字串後面 ?B+? 是不列入計算的煙霧彈, 對吧?

    2.如果可以固定輸入碼數, 這樣問題就解決一大半了喔!

    例如:

    原來的(1~3位數)大 (0~1位數)小 (0~1位數)B + (1~2位數)

    建議改成固定位數:

    (3位數)大 (2位數)小 (1位數)B + (2位數)→→碼數不足的一律補"0"

    就像這樣:

    35大4小3B+2→輸入3504302 (就是35_04_3_02)

    35大4小+2→輸入3504002 (就是35_04_0_02)

    35大3B+2→輸入350302 (就是35_03_02)

    150大+10→輸入 15010000(就是150_10_0_00)

    8大→輸入800000 (就是8_00_0_00)

    4大1小→輸入401000 (就是4_01_0_00)

    若可以這樣固定輸入的"碼數"就形同自定格式了

    假設:

    A1為"輸入"欄, B1為"顯示"欄,C1為"大", E1為"小", H是計算"?B", I是計算尾數2碼... D,F,G分別為金額與合計

    D2→輸入100 (大的金額)

    E2→輸入=VALUE(IF(LEN(A2)=8,MID(A2,4,2),IF(LEN(A2)=7,MID(A2,3,2),IF(LEN(A2)=6,MID(A2,2,2),0))))

    F2→輸入50 (小的金額)

    G2→輸入=C2*D2+E2*F2

    H2→輸入=(VALUE(RIGHT(A2,3))-VALUE(RIGHT(A2,2)))/100

    I2→輸入=VALUE(RIGHT(A2,2))

    公式往下複製即可

    Source(s): 自己
Still have questions? Get your answers by asking now.