將符合條件所有列的資料重新排序至另一工作表

2015-06-19 1:49 am
請問如何將編號為AA-111的所有列取出至另一工作表,請用函數,不要用vba,謝謝。
104/5/1進貨#5螺絲AA-111
104/5/1伙食費午餐AA-111
104/5/1進貨#3螺絲AA-102
104/5/2伙食費午餐AA-101
104/5/2進貨#3螺絲AA-111
更新1:

因為資料筆數很多,是否有公式之類可以自動篩選。謝謝

更新2:

感謝大家的回答及意見,因為對Excel還不是很熟,研究了好久還是解不出來,已將問題製作成範例,請各位前輩指正,謝謝。 http://www.FunP.Net/859253

更新3:

請問H大: 在公式裡的 =IF(ROW()-20>COUNTIF(總表!I:I,F$2),"",............. 可否跟我講解一下為什麼是這樣寫,謝謝

回答 (5)

2015-06-19 3:24 pm
✔ 最佳答案
設原始資料在 "工作表1" 的 A 欄 到 C 欄,共有 999 筆。
如圖:
https://lh3.googleusercontent.com/-cjrAU8VFVmg/VYNSzJqSydI/AAAAAAAATgo/6J4htBc1hD4/s539/20150619A.jpg

另一個工作表公式
=INDEX(工作表1!A:A,SMALL(IF(工作表1!$C$1:$C$999="AA-111",ROW($C$1:$C$999),""),ROW(A1)))

陣列公式,請按 Ctrl + Shift + Enter 完成輸入。右拉下拉複製。

2015-06-20 08:35:39 補充:
"矩陣公式無法適用在合併儲存格上"
改用輔助欄
請稍等

2015-06-20 09:05:07 補充:
輔助欄作法請參閱
http://www.funp.net/700012

另參考 E 大
先解除跨欄置中
寫完陣列公式再跨欄置中的方法
一併附於模擬範例檔內

2015-06-22 06:33:05 補充:
IF(ROW()-20>COUNTIF(總表!I:I,F$2),"",...
如果 (列數-20) 大於 (總表I欄 F2 的個數) 就顯示 (空白) 否則 (...公式...)

因為版大的資料是從第 21 列開始
所以 (列數-20) 依序就是
第1.2.3...筆資料
以範例為例 COUNTIF(總表!I:I,F$2) 會計算出共 6 筆 "AA-111 "
依上式第 7 筆資料會顯示 "空白"
而不會顯示 "公式" 造成錯誤

2015-06-22 06:36:06 補充:
也可以寫成這樣
IF(ROW(A1)>COUNTIF(總表!I:I,F$2),"",...
2015-06-20 6:36 pm
AE21.一般公式:
=LOOKUP("z",IF({1,0},"",AE20+MATCH(F$2,INDIRECT("總表!I"&AE20+1&":I20000"),))&"")

下刷取出全部列號,再使用INDEX去取對應內容!
2015-06-19 6:23 pm
2015-06-19 3:22 pm
善用篩選及ALT+;
就可以簡單複製

2015-06-19 07:22:07 補充:
資料多用公式未必有利
篩選可以考慮
VBA沒什麼不好對於不會函數且簡單的問題反而容易自己解決
用完刪除就可以或是存成一般文件檔就不會有擾人巨集問題

以下是資料在A欄資料是同一儲存格
Sub test()
ran = "*" & "AA-111"
With Sheets("進出貨")
.UsedRange.AutoFilter Field:=1, Criteria1:=ran
.UsedRange.Copy Sheets("新表").Cells(1, 1)
End With
End Sub
2015-06-19 2:48 am
提供企業全程刊登職缺及轉檔,免費客服解說教做,是人資部第一首選,找工作、找人才,提供24H必回覆、獨家工作、自傳急診室、履歷配對、面試教學、職涯測評、TOEIC線上模擬考工作快報、薪資查詢、職場英語…幫求職者快速http://www.jptpex2013.com.tw/


收錄日期: 2021-05-04 01:39:11
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20150618000015KK04930

檢視 Wayback Machine 備份