2011-05-06 69 views
-2

我以前從未設置過一個宏,但是我已經看到一個地方在電子表格中查看「數量」列,並且採取的數量不是(1)的數量並且複製了數字「數量」列中列出的時間。分手數量

有人能告訴我如何設置它嗎?

+0

保羅移動 - 你能請展示您的數據如何在s/sheet中組織的快照?如果可能的話,期望的輸出... – 2011-05-07 07:49:54

回答

3

這是可以幫助您開始的東西。我假設你想要的東西,像下面這樣:

 Col A Col B     Col A Col B 
1  Item  Quantity    Item  Quantity 
2  Apple 1      Apple 1 
3  Orange 2      Orange 
4  Banana 1    -----> Orange 2 
5  Pear  4      Banana 1 
6  Grape 2      Pear 
7          Pear 
8          Pear 
9          Pear  4 
10         Grape  
11         Grape 2 

這可以用下面的代碼來實現:

Sub ExpandItem() 
    Dim lastRow As Long, rngQuantity As Range, rw As Long 

    lastRow = Range("A1").End(xlDown).Row 

    For rw = lastRow To 2 Step -1 
     If Cells(rw, 1) > 1 Then 
      AddItem Cells(rw, 1), Cells(rw, 1).Offset(0, 1) 
     End If 
    Next rw 
End Sub 

Sub AddItem(item As Range, quantity As Long) 
    Dim i As Long 
     For i = 1 To (quantity - 1) 
       item.EntireRow.Insert Shift:=xlDown 
       item.Offset(-1, 0) = item.Value 
     Next i 
End Sub 

希望這有助於讓你在正確的方向