我创建了一个电子表格,该电子表格具有一个宏,当A列中的状态标记为“已付款”时,该宏将删除并移至新标签页。我需要更进一步,以便如果状态标记为“已付款”,并且D列中的发票编号与同一行匹配,则所有相同的发票编号也将移至新标签页。
将捕获该行发票编号的代码是什么?
然后在第一个循环内进行另一个for循环,循环遍历所有行并将所有与发票编号匹配的行移动到Sub TransferData()
Dim xRg As Range
Dim xCell As Range
Dim I As Long, J As Long, K As Long
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
If J = 1 Then
If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
End If
Set xRg = Worksheets("Sheet1").Range("A1:A" & I)
On Error Resume Next
Application.ScreenUpdating = False
For K = 1 To xRg.Count
If CStr(xRg(K).Value) = "paid" Then
xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
xRg(K).EntireRow.Delete
If CStr(xRg(K).Value) = "paid" Then
K = K - 1
End If
J = J + 1
End If
Next
Application.ScreenUpdating = True
End Sub
之后。当前电子表格图像。我正在使用的代码如下。该图像是电子表格的摘要。在示例中,莎拉·菲利普斯(Sarah Phillips)在第9到12行中的数据在A列的第9行中具有“已付款”状态。我需要所有具有相同发票编号的4到所有新电子表格。
我刚开始编写代码,建议我先捕获该行的发票编号,然后在第一个行中做一个循环,遍历所有行并将其移动。我不知道如何执行此操作或修改当前代码,以使其包含建议。
def your_action
render json: params[:your_json_array].map { |item| item[:address] }
end
我希望当A行标记为“已付款”并执行宏时,所有具有匹配发票编号的行都将被移动。
Is it possible to exclude specified GET parameters in apache access logs?
答案 0 :(得分:0)
我建议进行以下更改。
For
循环。这样比较容易,您也可以轻松进行。KillRnG
。您可以使用Offset
从匹配行的其他列中收集信息。看看我的例子。
'If you insert this immediately after you turn off screen
'updating you can loop through your rows.
dim aCell as Range
For Each aCell In Intersect(Range("A:A", ActiveCell.UsedRange)).Cells
If UCase(aCell.Value) = "PAID" Then
'do your thing of copying the row to some other other sheet.
'set the row for deletion... this will be done at the end.
Set killRNG = Union(killRNG, aCell.EntireRow)
Debug.Print "This is the invoice: " & aCell.Offset(0, 3).Value
End If
Next cell
'This will delete whatever you wanted
killRNG.ClearContents
killRNG.Delete