我有一个工作簿,其中包含几个具有不同类型库存的工作表和一个摘要工作表。
我正在尝试使用复选框,如果选中“True”,将复制该行数据并粘贴到汇总表中,从特定行开始。每个库存表都有几行不同的数据,我希望用户能够选中每个表上需要的多个复选框,并将此数据复制到汇总表中。
我发现下面这段代码大部分都能正常工作,除了它跳过了一些标记为“true”的数据行。一旦它将数据复制到新工作表中,它还会在行之间添加一个不必要的额外行。我可以做些什么修改,以便所有标记为“true”的数据都能被复制,并消除额外的行?
代码我发现是从这个视频:
https://www.youtube.com/watch?v=TJoRUwrEe0gSub CopyRowBasedOnCellValue() Dim xRg As Range Dim xCell As Range Dim A As Long Dim B As Long Dim C As Long A = Worksheets("Exterior Items").UsedRange.Rows.Count B = Worksheets("Customer Sheet").UsedRange.Rows.Count If B = 1 Then If Application.WorksheetFunction.CountA(Worksheets("Customer Sheet").UsedRange) = 0 Then B = 0 End If Set xRg = Worksheets("Exterior Items").Range("B1:B" & A) On Error Resume Next Application.ScreenUpdating = False For B = 1 To xRg.Count If CStr(xRg(B).Value) = "True" Then xRg(B).EntireRow.Copy Destination:=Worksheets("Customer Sheet").Range("A" & B + 9) B = B + 1 End If Next Application.ScreenUpdating = True End Sub
4个月前
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。