Excel-將客戶各產品直列陳現出來

2014-09-12 6:06 am
請問各位大大,

EXCEL檔可從此網頁下載:
http://www.FunP.Net/216767

下面是客戶各產品報價↓

客戶名代碼報價日單價產品規格
AA0012014/1/310紅襯衫S
AA0012014/3/2810黃襯衫S
AA0012014/4/2910白襯衫S
AA0012014/6/2110黑襯衫S
BA0022013/12/2011白襯衫M
BA0022014/2/2811黑襯衫M
CA0032014/2/1010.5紅襯衫M
CA0032014/5/1010.5黃襯衫M
CA0032014/8/1010.5白襯衫M
DA0042013/6/810.5白襯衫M
DA0042014/6/810.5黑襯衫M
EA0052014/1/225洋裝S
EA0052014/2/25襯裙S
EA0052014/3/210紅襯衫S
EA0052014/4/210黃襯衫S
EA0052014/5/210白襯衫S
FA0062014/2/2412紅襯衫L
FA0062014/4/112黃襯衫L
FA0062014/5/2912白襯衫L
FA0062014/7/312黑襯衫L
FA0062014/9/230洋裝L
GA0072014/2/910白襯衫S
GA0072014/5/1010黑襯衫S
HA0082014/6/627洋裝S

如果想在其他工作表或同個工作表將上表轉成這形式↓
Excel有什麼功能可以去設定呢?
或是得要透過VBA去寫呢?

ABCDEFGH
紅襯衫白襯衫紅襯衫白襯衫洋裝紅襯衫白襯衫洋裝
黃襯衫黑襯衫黃襯衫黑襯衫襯裙黃襯衫黑襯衫
白襯衫白襯衫紅襯衫白襯衫
黑襯衫黃襯衫黑襯衫
白襯衫洋裝

先謝謝回答的大大們
更新1:

感謝cascade、茶千千、EXCEL迷及Frank Chiou 大大們快速提供建議,我現在來研究一下^^" To 茶千千: 是的,原本想使用雙層的下拉式選單去處理,才需要把產品弄成這形式。 但我不確定是不是有更有效率的方式可以解決,所以分成兩個問題來問。

回答 (5)

2014-09-12 7:42 am
✔ 最佳答案
若考慮VBA,程式碼參考如下:
Sub test()
For i = 2 To Sheets("報價清單").Range("A65536").End(xlUp).Row
For j = 1 To Sheets("產品清單").Range("H1").Column
k = Sheets("產品清單").Cells(65536, j).End(xlUp).Row
If Sheets("報價清單").Cells(i, 1) = Sheets("產品清單").Cells(1, j) And Sheets("報價清單").Cells(i, 1) <> "" Then
Sheets("產品清單").Cells(k + 1, j) = Sheets("報價清單").Cells(i, 5)
k = k + 1
End If
Next j
Next i
End Sub
參考: 自己的做法
2014-09-16 11:56 pm
若要製作下拉式選單,以下檔案供參!
<<參考檔案>>下載地址
http://www.FunP.Net/138642
2014-09-12 5:52 pm
產品清單 A2 試試如下:

=IF(SUMPRODUCT((COUNTIF(A$1:A1,報價清單!$E$2:$E$100)=0)*(報價清單!$A$2:$A$100=A$1))>0,LOOKUP(2,1/((COUNTIF(A$1:A1,報價清單!$E$2:$E$100)=0)*(報價清單!$A$2:$A$100=A$1)),報價清單!$E$2:$E$100),"")

再往下往右拉 Copy.
2014-09-12 11:36 am
您好
您的問題似乎和另外一個訂單的問題應該是一起的?
把需求合併整理一下可能會比較輕鬆喔!

如果不寫VBA
妳可以用樞紐篩選的方式


============================
步驟●
更新你的報價文件
執行完之後
步驟●●
==>在test頁面==>樞紐範圍上""右鍵""==>重新整理
步驟●●●
將樞紐查詢完的資料複製,至其他資料表,稍作手動排版
也可以


檔案 Excel客戶資料_樞紐.xlsx
http://www.fileswap.com/dl/uApLLoAXlh/
參考: 其他問題再請您確認


收錄日期: 2021-04-27 21:22:01
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20140911000015KK06907

檢視 Wayback Machine 備份