English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

本人目前希望替我的清單多增加一個功能

基本上vlookup只能搜尋具有單一性的欄位,重覆則會無法顯示第二筆

而我則是希望可以將兩筆以上的資料列出來(使用公式),

(欄位)
流水號 ,年 ,月 ,日 ,料號 ,品名 ,數量 ,金額

以上是我的欄位
我要一次可以將同樣料號的列全部顯示出來(或者只出現10筆),並且照日期先後順序

雖然我不太知道細節,尤其是vlookup跟match最後的引數,還有lookup的功能
可是我提供幾個,我還能想的到的辦法
第一 : 利用資料(IF)相同則會顯示日期,然後用日期大小做名次(RANK 然後在(MATCH)搜尋名次列 用(INDEX)將資料抓到

但是我覺的這個還是有點麻煩,不知道有沒有更簡單的方法
希望各位多多指教

不清楚的人請用意見發問, 必免佔用到會的人

2007-01-04 22:52:05 · 2 個解答 · 發問者 “Jasting BB” 2 in 電腦與網際網路 軟體

嗯 這個解答 , 以我的程度 , 大概只懂一半 囧.....
我的程度實在是.....
目前我有一個小問題
若是以列數計算 , 他顯示的會不會照日期排序?
因為我還不大懂 , 所以問一下
至於名稱的設定 , 還有陣列的設定 , 可否煩請教一下
因為我開始學到現在 , 有學過 , 都還沒使用過 , 所以有點困難 !!

不然就麻煩你 PO出每個步驟 金拍謝~

2007-01-05 09:02:18 · update #1

定義好了 陣列也好了
但是還有問題
我稍做修改變成這樣
=SMALL(IF(料號=快速查尋!$A$3,ROW(流水號),""),ROW(A2))
定義( 料號 : A2~A2000 流水號 : B2~B2000)

後面ROW(A2)是我自己想的 因為我的第一排(橫向)放了日期跟聯結
所以從第二排才開始為清單

結果從第一到最後一個全部都是同一個數字(248),連不是這個料號的都有
我分別放了4件 在248,249,250,251列 到這裡希望你還能看的懂

2007-01-05 09:40:41 · update #2

忘了補充 [快速查尋!$A$3] 這個是我查尋的欄位
對照過了, 料號是複製過去測試的 , 完全相同

2007-01-05 09:43:45 · update #3

有地方再補充
我放了4個零件的列為(248~251)
他們的流水號為(246~249)

然後我的日期部份是分開登入的
年 月 日 各為一個欄位 如 | 95 | 8 | 23 | , 數字不加0
| 96 | 12 | 1 |

2007-01-05 10:04:10 · update #4

偷問一個問題
不知道可不可以這樣子

="年"&"月"&"日"&"流水號" <---比大小ㄋ?

但是會遇到缺0的問題 QQ|||

2007-01-05 11:19:23 · update #5

=IF(MID(AA3,2,1)="","0"&LEFT(AA3,1),LEFT(AA3,2))

缺0問題==

2007-01-05 11:24:26 · update #6

=IF(料號="","",IF(MID(月,2,1)="","0"&LEFT(月,1),LEFT(月,2))&IF(MID(日,2,1)="","0"&LEFT(日,1),LEFT(日,2)))

月日合併4位數

2007-01-05 11:29:43 · update #7

2 個解答

第一 : 利用資料(IF)相同則會顯示日期,然後用日期大小做名次(RANK 然後在(MATCH)搜尋名次列 用(INDEX)將資料抓到
除非一天一筆資料以上方法是可行,但不認為會只一筆如一筆以上RANK還是會有會產生相同資料,MATCH無法顯示第二筆,等於做白工.
=SMALL(IF(料號="xxx-xx",ROW(流水號),""),ROW(A1))
陣列公式 加按Ctrl+Shift+Enter
可以找到相同所有資料的列數
料號、流水號請定義其範圍,再利用(INDEX)將資料抓到
=INDEX(流水號,SMALL(IF(料號="XXX-XX",ROW(流水號),""),ROW(A1))-1) 
陣列公式 加按Ctrl+Shift+Enter
流水號應該不會相同且在第一欄,其他的看要用什麼函數隨你高興,

2007-01-05 16:42:37 補充:
=SMALL(IF(料號=快速查尋!$A$3,ROW(流水號),""),ROW(A2))
為最小的第2列數,所以要最小還是要輸入ROW(A1)
Ctrl+Shift+Enter後將公式下拉,可在下一列得到
第3列{=SMALL(IF(料號=快速查尋!$A$3,ROW(流水號),""),ROW(A2))}
第4列{=SMALL(IF(料號=快速查尋!$A$3,ROW(流水號),""),ROW(A3))}

2007-01-05 17:28:23 補充:
B3有點問題1=1、10=1、100=1
=TEXT(C3+1911&"/"&D3&"/"&E3,"eemmdd")&B3
比較一下看有何不同
有問題再提出,有空會回來看.


2007-01-11 21:04:03 補充:
回敬公式
=IF(G3="","",TEXT(C3+1911&"/"&D3&"/"&E3,"eemmdd")&TEXT(B3,"0000"))

2007-01-05 03:48:58 · answer #1 · answered by 顯栓 7 · 0 0

非常感謝你多提供這個公式給我
我做了修改,送給你
但是,你補充解答的那個還是不能用
我發現用成陣列後,全部變成一樣
因為你是寫,後面會增加row(a2) row(a3)......
使用陣列後,全部都是row(a2)
年+月+日+流水號
G3料號 ,C3年,D3月,E3日,B3流水號
=IF(G3="","",TEXT(C3+1911&"/"&D3&"/"&E3,"eemmdd")&IF(B3>999,LEFT(B3,4),IF(B3>99,"0"&LEFT(B3,4),IF(B3>9,"00"&LEFT(B3,4),"000"&LEFT(B3,4)))))


2007-01-12 04:20:24 補充:
感恩到不行~~~~~~~~~~
但是不好意思,你在幫我看一下是不是我陣列哪裡用錯了
我都照你po的步驟用ㄉ~~

2007-01-06 13:35:04 · answer #2 · answered by “Jasting BB” 2 · 0 0

fedest.com, questions and answers