2014-01-06 82 views
-1

我有一個excel中的零件列表和購買時間。部件列在4行中。第一行是所有手頭的摘要。接下來的三行代表每個購買價格有多少手。我有200多個零件,並且我知道如何手動將它們分組,但是我有興趣編寫VBA代碼,它將爲零件號中的每個更改創建一個組。然後,在組內,我想要最下面的3行從最舊到最新排序,以及是否有空白將它們留在組的底部。VBA在Excel中創建組,然後對每個組進行排序

Part No. Part Description On-Hand Price  Date  Ordered Bol # 
55 NIT   NC    21     
55 NIT   NC    10 15.00  09/18/13 15 115352-00 
55 NIT   NC    6  15.10  10/09/13 6 135216-00 
55 NIT   NC    5  15.05  11/17/13 5 156849-00 
404 R    cooling   2      
404 R    cooling   1  112.00  08/29/13 2 147859-00 
404 R    cooling   1  102.82  09/18/13 1 159568-00 
404 R    cooling   0  102.82 

@ARICH這是我的分組。我認爲這不是最有效的方法,但它可以爲已知數量的零件完成工作。我不知道如何編寫代碼來獲取所有數據並運行循環,直到它覆蓋了所有行。

Sub Makegroups4() 

' create a group out of every 4 rows. Skip the first row so it still shows and group the other three rows. 
' 
' i will be used to identify 1st row in group 

    i = 5 

    For x = 1 To 175 

     Rows(i & ":" & (i + 2)).Select 
     Selection.Rows.Group 

     i = i + 4 

    Next 



End Sub 
+2

你有什麼試過的?詢問代碼的問題必須證明對所解決問題的最小理解。包括嘗試解決方案,爲什麼他們沒有工作,以及預期的結果。 [見此](http://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist) – ARich

回答

0

我認爲數據透視表,與Part No.以上行標籤和Price平均Σ值Date

+0

我無法使用平均價格。這將用於會計,數字必須是實際的FIFO值。不過我會和數據透視表一起玩,看看我能不能找出一種方法來完成這項工作。謝謝你的想法。 @pnuts – Chewy1775

+0

(一)這是一個平均每天**,我懷疑在一天內的FIFO是必要的,但如果它是你(b)想添加索引?在白天,當數據沒有顯示時間的時候,這首先出現? – pnuts

相關問題