標題:

請用 excel 找出數字

發問:

A1 是隨機數,由1位數至15位數不固定。 可能是這樣 3 可能是這樣 234 可能是這樣 552342143123 可能是這樣 54647756478645 請用EXCEL公式重新排列,不要重覆的。 舉例: 54333333332580答案 543280 321123 答案 321 9633123 答案 96312 不知道例子是否清楚。 謝謝指教。 更新: ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 雖然是一個小小公式,卻集合了多種思考方法,我嘆為觀止。 謝謝大家。

最佳解答:

如果只有1~9 =SUBSTITUTE(SUMPRODUCT(--IF(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),A1)=ROW(INDIRECT("1:"&LEN(A1))),MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),0),10^(LEN(A1)-ROW(INDIRECT("1:"&LEN(A1))))),0,"") 有空再來想0 ^^ 2010-06-23 19:27:00 補充: W大公式可再省一字元(127) =SUM(RIGHT(LARGE(IF(ISERR(FIND(ROW($1:$10)-1,A1)),,FIND(ROW($1:$10)-1,A1)*10+(ROW($1:$10)-1)),ROW($1:$10)))*10^(ROW($1:$10)-1)) ^^ 2010-06-23 19:27:47 補充: =LEFT(SUM(RIGHT(LARGE(FIND(ROW($1:$10)-1,A1&"1234567890")*10+ROW($1:$10)-1,ROW($1:$10)))*10^(ROW($1:$10)-1)),COUNT(FIND(ROW($1:$10)-1,A1),"<>")) 144字元 2010-06-24 09:38:16 補充: 105字元 =SUM((0&MID(A1,SMALL(FIND(ROW(1:10)-1,A1&2/17),ROW(1:10)),1))*10^(COUNT(FIND(ROW(1:10)-1,A1))-ROW(1:10))) 2010-06-25 23:04:40 補充: 小弟也很想學習說 請RC大大分享之 ^^ 2010-06-26 15:41:45 補充: 感謝各位大大賜招,茲彙整如下 applerot(137) =SUM((0&MID(A1,TEXT(LARGE((MATCH(MID(A1,ROW(1:16),1),MID(A1,ROW(1:16),1),)=ROW(1:16))*ROW(1:16),ROW(2:16)),"0;;16"),1))*10^(ROW(1:15)-1)) Worlon(118) =SUM(MOD(LARGE(IF(ISERR(FIND(ROW(1:10)-1,A1)),,FIND(ROW(1:10)-1,A1)*10+(ROW(1:10)-1)),ROW(1:10)),10)*10^(ROW(1:10)-1)) Vincent(109) =LEFT(SUM((0&MID(A1,LARGE(FIND(ROW(1:10)-1,A1&2/17),ROW(1:10)),1))*10^ROW(1:10)),COUNT(FIND(ROW(1:10)-1,A1))) piny(105) =SUM((0&MID(A1,SMALL(FIND(ROW(1:10)-1,A1&2/17),ROW(1:10)),1))*10^(COUNT(FIND(ROW(1:10)-1,A1))-ROW(1:10)))

其他解答:

此文章來自奇摩知識+如有不便請留言告知

好熱鬧, 就來湊一腳了 ~ ^ ^ =SUM(MOD(LARGE(IF(ISERR(FIND(ROW($1:$10)-1,A1)),,FIND(ROW($1:$10)-1,A1)*10+(ROW($1:$10)-1)),ROW($1:$10)),10)*10^(ROW($1:$10)-1)) 2010-06-23 20:53:50 補充: MOD 改 RIGHT 去 $ 117 應該差不多了吧 ~ 誰叫我慣用"牛刀"呢 ? ^ ^ 2010-06-24 01:56:30 補充: b ^ ^ d ~ 2010-06-24 10:08:00 補充: 不才已經弄完斧, 現在等看結果了 ~ ^ ^ 2010-06-26 22:01:14 補充: 有參與就 60 分了 ^ ^|||||最大15位數 {=SUM((0&MID(A1,TEXT(LARGE((MATCH(MID(A1,ROW($1:$16),1),MID(A1,ROW($1:$16),1),)=ROW($1:$16))*ROW($1:$16),ROW($2:$16)),"0;;16"),1))*10^(ROW($1:$15)-1))}|||||謝謝 v 大大指教。 這題困繞人的是0字,我聽說先找出0~9的位置,沒找到的給0,這做法可避免了0與 "沒找到" 的混淆,試試看。 2010-06-23 18:36:55 補充: 至此,5樓公式最短,並可以處理多於15位數字(文字格式),好。 不過以江湖第一刀來看,128字元略嫌稍長。 :) 2010-06-23 21:14:09 補充: 最低要求少於110。 2010-06-24 08:35:15 補充: V 大厲害。讚 W 大趕快急起直追。 2010-06-24 10:06:21 補充: 哈哈,一山還有一山 "低" 。 2010-06-25 18:30:06 補充: 要結案了,請 P大大轉抄16樓公式往回答區。 謝謝 2010-06-26 16:58:24 補充: 這邊抄抄,那邊抄抄,抄得104字元: =SUM(MID(0&A1,1+LARGE(IF(ISERR(FIND(ROW(1:10)-1,A1)),,FIND(ROW(1:10)-1,A1)),ROW(1:10)),1)*10^ROW(2:11))% P大V大都很厲害。 估不到的是 A大W大都是;華山論 ”刀”,斷刀而回。 :)|||||{=SUBSTITUTE(SUBSTITUTE(REPLACE(SUM(ISNUMBER(FIND(ROW($A$1:$A$9),A1))*ROW($A$1:$A$9)*(10^(LEN(A1)-FIND(ROW($A$1:$A$9),A1&"123456789")))),IF(ISNUMBER(FIND(0,A1)),FIND(0,A1),99),1,IF(ISNUMBER(FIND(0,A1)),"A","")),0,""),"A",0)} 大師出題,先拋個磚吧~ 2010-06-24 00:06:11 補充: 好熱鬧喔~ 為了少幾個字,倒死了不少腦細胞~@@ =LEFT(SUM((0&MID(A2,LARGE(FIND(ROW(1:10)-1,A2&2/17),ROW(1:10)),1))*10^ROW(1:10)),COUNT(FIND(ROW(1:10)-1,A2))) 2010-06-25 21:15:34 補充: rc 兄前述P大公式仍有簡化空間,請分享一下吧,很看看ㄝ~ 多長一點見聞囉~ ^^7638E748CCC65837
arrow
arrow

    dvhtlbz 發表在 痞客邦 留言(0) 人氣()