Zellen mit bestimmten Inhalt löschen
Guten Morgen,
Ich hab da ein Problem....ich habe eine Excel-Tabelle wo viele unterschiedliche Positionen aufgeführt sind...
zu den Positionen gehören dann noch Infos wie Preis, Datum, Menge usw.
Jetzt gibts es jedoch eine Position die 20 Mal vorkommt, aber belanglos für mich ist.
Jetzt hätte ich gerne ein Makro, das überprüft ob der Wert "Porto" in einer Zelle in der Spalte "J" steht und wenn ja, dann diese Zellen löschen oder von mir aus auch ausblenden kann.
Und wenn nein, dann halt nix^^
Und es MUSS ein Makro sein, also VBA halt!!
Wäre cool wenn da einer was wüsste!!
Grüße
Astronomy
Ich hab da ein Problem....ich habe eine Excel-Tabelle wo viele unterschiedliche Positionen aufgeführt sind...
zu den Positionen gehören dann noch Infos wie Preis, Datum, Menge usw.
Jetzt gibts es jedoch eine Position die 20 Mal vorkommt, aber belanglos für mich ist.
Jetzt hätte ich gerne ein Makro, das überprüft ob der Wert "Porto" in einer Zelle in der Spalte "J" steht und wenn ja, dann diese Zellen löschen oder von mir aus auch ausblenden kann.
Und wenn nein, dann halt nix^^
Und es MUSS ein Makro sein, also VBA halt!!
Wäre cool wenn da einer was wüsste!!
Grüße
Astronomy
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 51092
Url: https://administrator.de/contentid/51092
Ausgedruckt am: 26.11.2024 um 04:11 Uhr
3 Kommentare
Neuester Kommentar
Moin,
müßte etwa so laufen:
Gehe davon aus, das in Spalte J ab Spalte 2 immer was drin steht, musste sonst einfach anpassen
MfG
Henrik
müßte etwa so laufen:
Sub löschePorto()
Dim i%
i = 2
Do Until ActiveSheet.Range("J" & i) = ""
If ActiveSheet.Range("J" & i).Value = "Porto" Then
ActiveSheet.Rows(i).Delete
i = i - 1
End If
i = i + 1
Loop
End Sub
MfG
Henrik
Hallo Astronomy!
Der folgende Code beginnt bei Zeile 2 und läuft so lange, bis er auf die erste leere Zelle in Spalte "A" stößt:
Um die gefundenen "Porto"-Zeilen (nicht Zellen!) zu löschen, die Zeile ".EntireRow.Delete" verwenden (Apostroph entfernen).
Grüße
bastla
[Edit] @wakko - Sorry, hatte nicht noch mal reingeschaut ... [/Edit]
[Edit2] Korrektur der Zeilennummer beim Löschen hinzugefügt [/Edit2]
Der folgende Code beginnt bei Zeile 2 und läuft so lange, bis er auf die erste leere Zelle in Spalte "A" stößt:
Sub PortoWeg()
Dim iZeile As Integer
iZeile = 2
Do While Cells(iZeile, "A") <> ""
With Cells(iZeile, "J")
If LCase(.Value) = "porto" Then
.EntireRow.Hidden = True
'.EntireRow.Delete: iZeile = iZeile - 1
End If
End With
iZeile = iZeile + 1
Loop
End Sub
Grüße
bastla
[Edit] @wakko - Sorry, hatte nicht noch mal reingeschaut ... [/Edit]
[Edit2] Korrektur der Zeilennummer beim Löschen hinzugefügt [/Edit2]