excel資料整理

2013-12-14 11:39 pm
excel 2003

A1:A21 為車輛編號
B1:B15 為每車出車日期
C1:C15 為出車地點

F1:T1 為12/1~12/15日期
E2:E13 為A~F 6部車號

如何用函數,當F1日期為12月1日、E2:E3車輛編號為A時,
F2可為甲、F3可為戊,並可自動填滿表格

附上檔案連結http://www.FunP.Net/701324

煩請各位先進賜教
更新1:

感謝各位先進的意見 是否可以再補充 1、請問"嫺"的用法 2、為什麼會用到陣列

更新2:

3、 D1 =SUMPRODUCT(--(A$1:A1&B$1:B1=A1&B1)) --的用法說明

更新3:

想不到各位前輩這麼熱烈的討論,小弟受寵若驚 不過......小弟才疏學淺,沒能參透箇中奧秘 有前輩願意上答,且再幫小弟詳細解說嗎? 感激不盡!

更新4:

若如果A在12月1日跑了5個地方,又該如何做?

更新5:

謝謝前輩們提供的意見,其實小弟原本的問題是"每部車每天都要去4個地點" 但偷懶,想說用"2個地點"的做法來修改,想不到竟如此複雜 最後,容許小弟不情之請,前輩是否可以"每部車每天都要去4個地點"上答 感激不盡!!

更新6:

報告 EXCEL迷 前輩, 1、可以解釋一下輔助欄E、F、G的意思嗎? 2、"按F9試試"是不是寫了甚麼在裡面? 謝謝

更新7:

感謝各位前輩的幫忙 這邊要懇請EXCEL迷 前輩上答了!

更新8:

請excel迷前輩以最後的意見"去幾個地點 不受限制"上答

回答 (5)

2013-12-23 5:48 pm
✔ 最佳答案
F2
=INDEX($C:$C,SMALL(IF(($B$1:$B$21=F$1)*($A$1:$A$21=T(OFFSET($E$1,INT(ROW()/2)*2-1,))),ROW($C$1:$C$21),4^8),MOD(ROW(),2)+1))&""
陣列 右拉 再下拉

2013-12-18 13:34:15 補充:
給 006 "准大" 按二個讚
=$E1&$E2 --->每二格產生一樣
($E2="")+1 --->1.2產生循環

2013-12-18 14:05:03 補充:
006 "准大" =$E1&$E2 (格式從E2開始)上面空一格 若四格合一 上面空三格 $E1&$E2&$E3&$E4 格式從E4開始 後半段用 MOD(ROW(A1)-1,4)+1
理論上應可以 請大師們共同研究 賜教

2013-12-19 14:52:11 補充:
006 "准大" + 014
http://www.FunP.Net/764343

2013-12-20 14:35:25 補充:
去幾個地點 不受限制 但有輔助 請大師們共同研究 可否無輔助
http://www.FunP.Net/868957

2013-12-21 13:32:23 補充:
F欄:找出A欄不重覆車號
G欄:利用F欄找出同日期車號最多到幾處
E欄:第一格是 1 第二格起是G欄累加
I欄再用VLOOKUP找出希望車號
按F9試試:因車號用亂數產生 每按一次車號就變

2013-12-23 09:48:46 補充:
http://www.FunP.Net/868957
意見區有 大師們巧妙的傑作
2013-12-16 9:37 pm
F2.陣列公式:
=INDEX($C:$C,SMALL(IF(($A$1:$A$21=$E1&$E2)*($B$1:$B$21=F$1),ROW($1:$21),4^8),($E2="")+1))&""

2013-12-16 13:38:44 補充:
若資料不超過一萬列,
F2.一般輸入:
=INDEX($C:$C,SUMPRODUCT(SMALL((1-($A$1:$A$21=$E1&$E2)*($B$1:$B$21=F$1))*10^4+ROW($1:$21),($E2="")+1)))&""

2013-12-16 15:12:08 補充:
<參考檔>:
http://www.funp.net/158905

加入輔助欄方法!

2013-12-16 21:09:31 補充:
~~若如果A在12月1日跑了5個地方,又該如何做?

不固定列合併格,LOOKUP取對照值才是正規,
若原需求的公式已看不懂,再增加的條件更複雜,應不太容易解釋!
006~8純是借巧,參考即可!
2013-12-16 5:15 pm
F2公式=INDEX($C:$C,SMALL(IF(($A$1:$A$100=LOOKUP("龥",$E$2:$E2))*($B$1:$B$100=F$1),ROW($1:$100),4^8),MOD(ROW(A1)-1,2)+1))&""
陣列公式輸入完後按往CTRL+SHIFT+ENTER鍵,往右往下刷(複製)

<<參考檔>>下載地址
http://www.FunP.Net/252716
2013-12-15 9:14 pm
F2:
=INDEX($C:$C,SMALL(IF(($A$1:$A$21=LOOKUP("嫺",$E$1:$E2))*($B$1:$B$21=F$1),ROW($1:$21),4^8),MOD(ROW(),2)+1))&""

陣列公式,輸入時先不按enter,以 [Ctrl] + [Shift] + [Enter] 三鍵齊按作結束,然後向右向下複製公式

2013-12-16 19:35:05 補充:
006可再縮簡為:
=INDEX($C:$C,SMALL(IF($A$1:$A$21&$B$1:$B$21=$E1&$E2&F$1,ROW($1:$21),4^8),($E2="")+1))&""
2013-12-15 7:21 am
增加輔助欄
D1 =SUMPRODUCT(--(A$1:A1&B$1:B1=A1&B1))
下拉

表格查詢公式
F2 =LOOKUP("嫺",IF({1,0},"",LOOKUP(,0/(LOOKUP("嫺",$E$2:$E2)&F$1&MOD(ROW(A2),2)+1=$A$1:$A$21&$B$1:$B$21&$D$1:$D$21),$C$1:$C$21)))
下拉右拉

2013-12-16 00:40:07 補充:
D1 =SUMPRODUCT(--(A$1:A1&B$1:B1=A1&B1))
是在計算同樣A、B出現的次數

"嫺"是字碼中比較大數之一,配合LOOKUP找最後一個文字用
也可以用其他字碼來取代

陣列公式中含有非處理陣列計算規則或函數時,需要用 [Ctrl] + [Shift] + [Enter] 三鍵齊按 來通知EXCEL,這公式需要強迫做陣列運算。

2013-12-16 16:01:39 補充:
准大: 006 / 007 兩式採用前後空白借位利害

2013-12-16 23:32:07 補充:
如果擴充 准大的方法是有困難的

請E大或D大來做答

2013-12-19 11:48:47 補充:
將 $E1$$E2
改為 PHONETIC(OFFSET($E2,,,-MIN(ROW(),4)))

2013-12-19 12:15:03 補充:
006 / 010樓 修改為4格如下

=INDEX($C:$C,SMALL(IF($A$1:$A$99&$B$1:$B$99=PHONETIC(OFFSET($E2,,,-MIN(ROW(),4)))&F$1,ROW($1:$99),4^8),MOD(ROW(A4),4)+1))&""

准大的式子是 苗條淑女,我改完後已經變成 臃腫大嬸,歹勢阿


收錄日期: 2021-04-27 20:44:23
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20131214000010KK02613

檢視 Wayback Machine 備份