2017-08-29 32 views
-1

我正在爲另一個用戶構建工作簿並希望它儘可能自動。在工作表1中,用戶將複製銷售數據,每個產品編號包含多行。每次行數將會不同。 我想複製其中的每一行到第2頁,其中有一個Vlookup到樞軸。根據列表中的新條目將行從一張表複製到另一張

澄清:

列A:K有產品數據。但每種產品都有多行銷售數據,分發給不同的客戶。我只想將每行產品的一行復制到另一張紙上。

我找不到VBA的「爲F列各新號碼:F做......」

enter image description here

+0

改善你的問題,真的很難理解你在問什麼,你想複製每一行的一行嗎?你想複製一行粘貼的數據?那麼,爲什麼你說如果你想複製一行,粘貼的數據每次都是不同的? 無論如何,對於每個在像這樣 VBA工作「爲每個ITM在對象 下ITM」 其中對象可以是一個集合,陣列或單元的範圍。 – exSnake

+0

添加這個細節編輯你的問題,然後如果你添加一些圖片你會更好... – exSnake

+0

我在這裏很新,所以我錯了一下,但學習:)圖片後。 – Sture

回答

0

所以我沒有足夠的信息從你的問題,以便能夠根本不需要修改這些代碼,但是我在一個星期前建立了一個項目,並且有類似的問題。這裏是我的代碼:

Dim c As Integer 
Dim find As Double 
Dim row As Integer 
Dim config As Long 
Dim configA As Long 
Dim cnt As Integer 
Dim o As Integer 
Dim LastRow As Range 


find = Sheets("Packing Slip").Cells(6, "G").Value 

Sheets("Shipping Detail").ListObjects("Table_Shipping_Detail_Lookup").Range.AutoFilter Field:=6, Criteria1:=find 
c = 20 

For o = 2 To 175 


     If Sheets("Shipping Detail").Cells(o, 6) = find Then 
      Sheets("Packing Slip").Cells(c, 2) = Sheets("Shipping Detail").Cells(o, 1) 
      Sheets("Packing Slip").Cells(c, 3) = Sheets("Shipping Detail").Cells(o, 7) 
      Sheets("Packing Slip").Cells(c, 4) = Sheets("Shipping Detail").Cells(o, 8) 
      Sheets("Packing Slip").Cells(c, 5) = Sheets("Shipping Detail").Cells(o, 11) 

      config = Sheets("Shipping Detail").Cells(o, 1) 
      configA = Sheets("Shipping Detail").Cells(o + 1, 1) 

      Do While configA - config = 0 
       cnt = cnt + 1 
       c = c + 1 
       Sheets("Packing Slip").Cells(c, 4) = Sheets("Shipping Detail").Cells(o, 5) 
       o = o + 1 

       If configA - config = 1 Then 
        Exit Do 
       End If 
       configA = Sheets("Shipping Detail").Cells(o + 1, 1) 
      Loop 

      c = c + 1 
      configA = configA + 1 
     End If 
Next o 

Sheets("Shipping Detail").ListObjects("Table_Shipping_Detail_Lookup").Range.AutoFilter Field:=6 
Worksheets("Packing Slip").Activate 

這第一個IF語句將第一個列表中的數據與運輸細節中的搜索匹配。

如果裝運明細中的下一行數據具有相同的訂單號,則在裝箱單上的下一行中僅將裝運明細的第5列中的商品(這是產品描述)複製到在包裝的第4列溜

如果下一個目前擁有相同的訂單號碼,但其他產品,這將拉動產品標題是下一個,現在,它的細節遵循

如果下一行是一個新的命令一起程序停止。

希望這有助於!

+0

我想我可以改寫這個,沒有想到「Do While」在這裏。日Thnx! – Sture

相關問題