KutoolsforOffice — Eén oplossing, vijf krachtige tools.Meer bereiken met minder moeite.

Hoe kopieer ik rijen van meerdere werkbladen die voldoen aan bepaalde criteria naar een nieuw blad?

AuteurXiaoyang Wijzigingsdatum

Stel dat u een werkmap hebt met drie werkbladen die dezelfde opmaak hebben als in de onderstaande schermafbeelding. Hoe kopieert u alle rijen van deze werkbladen waarin kolom C de tekst „Completed” bevat snel en eenvoudig naar een nieuw werkblad, zonder alles handmatig één voor één te kopiëren en plakken?

voorbeeldgegevens 1voorbeeldgegevens 2voorbeeldgegevens 3

Rijen van meerdere werkbladen op basis van criteria kopiëren naar een nieuw blad met VBA-code


Rijen van meerdere werkbladen op basis van criteria kopiëren naar een nieuw blad met VBA-code

De volgende VBA-code helpt u om specifieke rijen van alle werkbladen in de werkmap te kopiëren naar een nieuw werkblad op basis van een bepaalde voorwaarde. Volg deze stappen:

1. Houd de toetsen ALT + F11 ingedrukt om het venster Microsoft Visual Basic for Applications te openen.

2. Klik op Invoegen > Module en plak de volgende code in het modulevenster.

VBA-code: Rijen van meerdere bladen op basis van criteria kopiëren naar een nieuw blad

Public Sub CopyRows_ValuesAndNumberFormats()
Dim xWs As Worksheet
Dim xCWs As Worksheet
Dim xRg As Range
Dim xStrName As String
Dim xRStr As String
Dim xRRg As Range
Dim xC As Integer
On Error Resume Next
Application.DisplayAlerts = False
xStr = "Kutools for Excel"
xRStr = "Completed"
Set xCWs = ActiveWorkbook.Worksheets.Item(xStr)
If Not xCWs Is Nothing Then
    xCWs.Delete
End If
Set xCWs = ActiveWorkbook.Worksheets.Add
xCWs.Name = xStr
xC = 1
For Each xWs In ActiveWorkbook.Worksheets
    If xWs.Name <> xStr Then
        Set xRg = xWs.Range("C:C")
        Set xRg = Intersect(xRg, xWs.UsedRange)
        For Each xRRg In xRg
            If xRRg.Value = xRStr Then
               xRRg.EntireRow.Copy
               xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
               xC = xC + 1
            End If
        Next xRRg
    End If
Next xWs
Application.DisplayAlerts = True
End Sub

Opmerking: In bovenstaande code:

  • De tekst „Completed” in dit xRStr = „Completed"script geeft de specifieke voorwaarde aan op basis waarvan u rijen wilt kopiëren;
  • C:C in dit Set xRg = xWs.Range(„C:C") script geeft de kolom aan waarin de voorwaarde zich bevindt.

3. Druk vervolgens op de toets F5 om deze code uit te voeren. Alle rijen die voldoen aan de opgegeven voorwaarde zijn nu gekopieerd en geplakt in een nieuw werkblad met de naam Kutools voor Excelbinnen het huidige werkboek. Zie de schermafbeelding:

vba-code om rijen te kopiëren van meerdere werkbladen op basis van criteria



Meer gerelateerde artikelen over gegevens ophalen of kopiëren:

  • Gegevens kopiëren naar een ander werkblad met Geavanceerd filter in Excel
  • Normaal gesproken kunt u de functie Geavanceerd filter snel toepassen om gegevens uit de brongegevens in hetzelfde werkblad te extraheren. Maar soms krijgt u, wanneer u het gefilterde resultaat naar een ander werkblad probeert te kopiëren, het volgende waarschuwingsbericht te zien. Hoe kunt u in dat geval deze taak in Excel aanpakken?
  • Rijen kopiëren naar nieuw blad op basis van kolomcriteria in Excel
  • Stel dat u een fruitinkoopprijslijst heeft en records naar een nieuw blad wilt kopiëren op basis van een specifiek soort fruit. Hoe doet u dat eenvoudig in Excel? Hieronder beschrijf ik een paar methoden om rijen naar een nieuw blad te kopiëren op basis van kolomcriteria in Excel.
  • Rijen kopiëren als kolom specifieke tekst/waarde bevat in Excel
  • Stel dat u cellen wilt zoeken die specifieke tekst of een bepaalde waarde bevatten in een kolom en vervolgens de Gehele rij wilt kopiëren waarin de gevonden cel zich bevindt. Hoe kunt u dit aanpakken? Hieronder beschrijf ik een paar methoden om te zoeken of een kolom specifieke tekst of een waarde bevat en vervolgens de Gehele rij te kopiëren in Excel.

  • Super Formulebalk (bewerk eenvoudig meerdere regels tekst en formules); Leeslay-out (lees en bewerk gemakkelijk grote aantallen cellen); Plakken naar Filterbereik...
  • Samengevoegde cellen/rijen/kolommen en bijbehorende gegevens behouden; inhoud van cellen splitsen; Dubbele rijen combineren en som/gemiddelde berekenen... Voorkom dubbele invoer in cellen; Bereiken vergelijken...
  • Selecteer dubbele of unieke rijen; selecteer lege rijen (alle cellen zijn leeg); superzoeken en fuzzy zoeken in meerdere werkmappen; willekeurig selecteren...
  • Exacte kopie van meerdere cellen zonder dat u de formuleverwijzing hoeft te wijzigen; automatisch verwijzingen maken naar meerdere werkbladen; opsommingstekens invoegen, selectievakjes en meer...
  • Favoriete formules, berekeningen, grafieken en afbeeldingen snel invoegen;Cellen met wachtwoord versleutelen;Mailinglijst maken en e-mails verzenden...
  • Tekst extraheren, tekst toevoegen, tekens verwijderen op een bepaalde positie, spaties verwijderen; gegevensbladstatistieken maken en afdrukken; converteren tussen celinhoud en opmerkingen...
  • Superfilter (sla filterinstellingen op en pas ze toe op andere werkbladen); Geavanceerd sorteren per maand, week, dag, frequentie en meer; Speciaal filter op vet, cursief...
  • Combineer werkmappen en werkbladen; voeg tabellen samen op basis van een sleutelkolom; splits gegevens op in meerdere werkbladen; batchconverteer xls-, xlsx- en PDF-bestanden...
  • Groepeer draaitabel op weeknummer, dag van de week en meer...Toon niet-vergrendelde en vergrendelde selecties met verschillende kleuren;Markeer cellen met formules of namen...
kte tab 201905
  • Schakel tabbladbewerking en -lezen in voor Word, Excel, PowerPoint, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten aan in nieuwe tabbladen binnen hetzelfde venster, in plaats van in afzonderlijke vensters.
  • Verhoogt uw productiviteit met 50 % en bespaart u dagelijks honderden muisklikken!
officetab onderkant