
如何根據條件將多個工作表中的行復制到新工作表中?
假設您有一個包含三個工作表的工作簿,這些工作表的格式與下面的屏幕快照相同。 現在,您想要將這些工作表中的C列包含“已完成”文本的所有行復制到新工作表中。 您如何快速,輕松地解決此問題,而又不手動一一復制和粘貼它們?
根據條件將多個工作表中的行復制到具有VBA代碼的新工作表中
根據條件將多個工作表中的行復制到具有VBA代碼的新工作表中下面的VBA代碼可以幫助您根據特定條件將工作簿中所有工作表中的特定行復制到新工作表中。 請這樣做:
1。 按住 ALT + F11 鍵打開 Microsoft Visual Basic應用程序 窗口。
2。 點擊 插頁 > 模塊,然后將以下代碼粘貼到“模塊窗口”中。
VBA代碼:根據條件將多個工作表中的行復制到新工作表中
Public Sub CopyRows_ValuesAndNumberFormats()Dim xWs As WorksheetDim xCWs As WorksheetDim xRg As RangeDim xStrName As StringDim xRStr As StringDim xRRg As RangeDim xC As IntegerOn Error Resume NextApplication.Displayalerts = FalsexStr = "Kutools for Excel"xRStr = "Completed"Set xCWs = ActiveWorkbook.Worksheets.Item(xStr)If Not xCWs Is Nothing ThenxCWs.DeleteEnd IfSet xCWs = ActiveWorkbook.Worksheets.AddxCWs.Name = xStrxC = 1For Each xWs In ActiveWorkbook.WorksheetsIf xWs.Name <> xStr ThenSet xRg = xWs.Range("C:C")Set xRg = Intersect(xRg, xWs.UsedRange)For Each xRRg In xRgIf xRRg.Value = xRStr ThenxRRg.EntireRow.CopyxCWs.Cells(xC, 1).PasteSpecial xlPastevaluesAndNumberFormatsxC = xC + 1End IfNext xRRgEnd IfNext xWsApplication.Displayalerts = TrueEnd Sub備注:在上面的代碼中:
文本 ”完成”在此 xRStr =“已完成” 腳本指示您要基于其復制行的特定條件;C:C 摘要可點擊此連結 設置xRg = xWs.Range(“ C:C”) 腳本指示條件所在的特定列。3。 然后按 F5 鍵運行此代碼,并且具有特定條件的所有行已被復制并粘貼到當前工作簿中名為 Kutools for Excel 的新工作表中。看截圖:
更多相關的拉取或復制數據文章:使用Excel中的高級篩選器將數據復制到另一個工作表通常,我們可以快速應用“高級篩選器”功能從同一工作表中的原始數據中提取數據。 但是,有時,當您嘗試將篩選的結果復制到另一個工作表時,會收到以下警告消息。 在這種情況下,您如何在Excel中處理此任務?根據Excel中的列條件將行復制到新表如果列在Excel中包含特定的文本/值,則復制行假設您要找出一列中包含特定文本或值的單元格,然后復制找到的單元格所在的整行,您該如何處理? 在這里,我將介紹幾種方法來查找列是否包含特定的文本或值,然后在Excel中復制整個行。
