Teilen der Arbeitsmappe mithilfe des Filters und Erstellen einer neuen Datei im Spaltennamen


0

Angenommen, ich habe eine Arbeitsmappe (Report.xlsx) und in dieser Arbeitsmappe ein anderes Arbeitsblatt. In jedem Blatt habe ich einen Spaltennamen B_Code. Mit Filter in B_Code möchte ich eine separate Arbeitsmappe mit jedem Blatt darin.

Genau wie in Bild 1 ist in Blatt 1 B_Code zu sehen.

Ebenso habe ich in Blatt 2 auch B_Code drin.

Jetzt möchte ich die Daten von 001, dh Ram, in Blatt 1 sowie in Blatt 2 in derselben Arbeitsmappe wie Dateiname 001 und 002, dh Hari, in Blatt 1 sowie in Blatt 2 in einer anderen Arbeitsmappe als Dateiname 002 und so weiter.

Kann mir jemand helfen, dieses Problem mit VBA zu lösen.

Antworten:


0

Speichern Sie eine Kopie der Datei, bevor Sie mit dem Löschen beginnen. Dann können Sie VBA-Code verwenden, der eine Zeile löscht, wenn cell ( rngCell) einen anderen Wert als 001 oder B_Code oder ein Leerzeichen hat.

        If rngCell.Value <> "001" _
            And rngCell.Value <> "B_Code" _
            And rngCell.Value <> "" _
            Then
                rngCell.EntireRow.Delete
        End If

Setzen Sie diesen Code in eine ForSchleife, um alle Zellen in Spalte A zu überprüfen. Da Sie Zeilen löschen, starten Sie die Schleife in der letzten Zeile und rücken Sie mit nach oben Step -1. Der Code, der die letzte Zeile ( lngLastRowNumber) findet, wird unter Suchen der zuletzt verwendeten Zelle in einem Bereich erläutert .

    lngLastRowNumber = Cells(Rows.Count, "A").End(xlUp).row
    For lngRowNumber = lngLastRowNumber To 1 Step -1
        Set rngCell = Columns("A").Rows(lngRowNumber)
        If rngCell.Value <> "001" _
            And rngCell.Value <> "B_Code" _
            And rngCell.Value <> "" _
            Then
                rngCell.EntireRow.Delete
        End If
    Next lngRowNumber

Platzieren Sie die Schleife in einer anderen Schleife, die Arbeitsblatt ist, um Zeilen in jedem Arbeitsblatt zu löschen For Each.

Schreiben Sie Probleme beim Schreiben und testen Sie den Code.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.