Ich habe vier Blätter mit Rohdaten, die ich in meiner Arbeitsmappe duplizieren möchte und die für Querverweise allein gelassen werden. Dann möchte ich alle Zeilen über der Zelle mit dem Text "proj def" entfernen (es erscheint zweimal, aber es gibt Zellen, die zwischen den beiden Erscheinungen liegen - was in meinem Code ersichtlich sein wird). Ich möchte dies für die ersten vier Blätter meiner Arbeitsmappe tun, während ich die ursprünglichen duplizierten Arbeitsblätter allein lasse, aber nur mit dem ersten Arbeitsblatt mit der Bezeichnung "ptd". Ich habe versucht, das nächste Arbeitsblatt "ytd" zu aktivieren und sogar das ursprüngliche Arbeitsblatt "ptd" zu löschen, um zu sehen, ob es mir erlauben würde, den Standort von myRange zu ändern, aber ich hatte keinen Erfolg. Im Wesentlichen möchte ich diesen Code in Untermethoden ausführen, zwei für das erste Blatt "ptd", zwei weitere für das zweite Blatt "YTD", eine weitere 2 für "Qtr" und die letzten 2 für "Mth". Alle Änderungen an meinem Beispielcode würden sehr geschätzt werden.Alle Zeilen entfernen, die bestimmten Text über mehrere Blätter hinweg enthalten
Sub part1()
Worksheets("ptd").Copy After:=Worksheets("mth")
Worksheets("ytd").Copy After:=Worksheets("ptd (2)")
Worksheets("qtr").Copy After:=Worksheets("ytd (2)")
Worksheets("mth").Copy After:=Worksheets("qtr (2)")
End Sub
Sub part2()
Worksheets("ptd").Activate
Set rngActiveRange = ActiveCell
Dim MyRange As Range
Set MyRange = ActiveSheet.Range("A:A")
MyRange.Find("Customer Unit", LookIn:=xlValues).Select
rngActiveRange.Offset(-1, 0).Select
Range(rngActiveRange.Row & ":" & 1).Rows.Delete
End Sub
Sub part3()
Dim MyRange As Range
Set MyRange = ActiveSheet.Range("A:A")
MyRange.Find("Project Definition", LookIn:=xlValues).Select
ActiveCell.Offset(-1, 0).Select
Range(ActiveCell.Row & ":" & 1).Rows.Delete
End Sub
Sub part4()
Worksheets("ytd").Activate
Set rngActiveRange = ActiveCell
Dim MyRange As Range
Set MyRange = ActiveSheet.Range("A:A")
MyRange.Find("Customer Unit", LookIn:=xlValues).Select
rngActiveRange.Offset(-1, 0).Select
Range(rngActiveRange.Row & ":" & 1).Rows.Delete
End Sub
Sub part5()
Dim MyRange As Range
Set MyRange = ActiveSheet.Range("A:A")
MyRange.Find("Project Definition", LookIn:=xlValues).Select
ActiveCell.Offset(-1, 0).Select
Range(ActiveCell.Row & ":" & 1).Rows.Delete
End Sub
Was ist die 'ActiveCell', wenn Sie jedes Blatt aktivieren? Möchten Sie alle Zeilen, in denen diese Wörter angezeigt werden, von unten nach oben entfernen? – BruceWayne
A26, der Standort von "Customer Unit" – Shin
Wenn "Customer Unit" in "A26" und "A199" ist, möchten Sie alle Zeilen von "1: 198" entfernen? Bearbeiten: Warten Sie, Sie haben 'Kundeneinheit' und' Projektdefinition' in beiden Blättern. Sie möchten die Zeilen vor 'Customer Unit' entfernen und dann die Zeilen vor' Project Definition' entfernen, nachdem Sie die Zeilen vor 'Customer Unit' entfernt haben, ja? Verstehe ich das richtig? – BruceWayne