循環行有沒有人有通過排在過濾表中循環的好方法?在過濾表
我傾向於需要使用一些數據從一個過濾表填充到另一個文件,在這種情況下,賬戶工作表的聲明。由於行是不連續的,我以前使用行號填充數據的方法似乎失敗了。
SOAwb是與來自TSOA表的數據來填充一個單獨的工作簿時,大多數代碼實際工作而是從過濾/隱藏範圍數據仍包含。
j是上SOAwb第一個空行,所以在該端部爲環,當j = J + 1個的下一個空行重複填充過程
For k = 1 To TSOA.DataBodyRange.Columns(1).SpecialCells(xlCellTypeVisible).Count
SOAwb.Worksheets(1).Cells(j, 4) = TSOA.DataBodyRange(k, 6) 'debit amount
SOAwb.Worksheets(1).Cells(j, 5) = TSOA.DataBodyRange(k, 7) 'credit amt
SOAwb.Worksheets(1).Cells(j, 1) = TSOA.DataBodyRange(k, 3) 'Date
SOAwb.Worksheets(1).Cells(j, 2) = Right(TSOA.DataBodyRange(k, 3), 2) & "-" & TSOA.DataBodyRange(k, 2) 'Reference Number
Select Case TSOA.DataBodyRange(k, 1)
Case "INV"
SOAwb.Worksheets(1).Cells(j, 3) = "Invoice"
Case "CR"
SOAwb.Worksheets(1).Cells(j, 3) = "Credit"
Case Else
MsgBox "Invalid Type"
End Select
j = j + 1
Next
這將是完美的,如果K是仍然表格中的相對行號#位置。有沒有人有關於如何做到這一點的建議,或者使用過濾範圍將數據(逐行)填充到另一個工作簿的替代方法?
通過循環使用'for'循環,[觀察]表(https://msdn.microsoft.com/en- us/library/office/ff196157.aspx)'.specialcells(xlcelltypevisible)'只使用過濾結果。相應地修改你的代碼。 – Tom
這幾乎是我的代碼正在做的,我正在努力'相應地修改你的代碼'位。謝謝 – lackdaz