Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeilen löschen, danach den Zelleninhalt verschiebe

Zeilen löschen, danach den Zelleninhalt verschiebe
04.10.2007 14:48:00
Selma
Hallo Leute,
ich habe eine Frage:
Folgendes betrifft die Zellen in Spalte A:
- wenn der Zelleninhalt mit "Size", "Complete", "Save", "Referer" anfängt dann sollen diese Zeilen gelöscht werden.
- "Name:" und "Comment:" sollen entfernt werden.
- Der restliche Zelleninhalt von "Comment:" soll in Spalte B parallel zu den restlichen Zelleninhalt von "Name:" verschoben werden.
Anbei eine Beispieldatei ( mit zwei AB's VORHER und NACHHER ) mit Beschreibung: https://www.herber.de/bbs/user/46528.xls
Wie mache ich das?
Vielen Dank im Voraus.
Liebe Grüße
Selma

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Liste per VBA auswerten: Zeile verschieben/löschen
04.10.2007 15:17:44
NoNet
Hallo Selma,
Kopiere das folgende Makro in ein Modul im VBA-Editor und starte es :
Sub ZeilenLoeschenUndVerschieben()
    '04.10.2007, NoNet
    Dim Inhalt, zeile, namezeile
    zeile = 3 'Start ab zeile 3
    namezeile = 0
    Do
        If InStr(Cells(zeile, 1), ":") > 0 Then
            Inhalt = Left(Cells(zeile, 1), InStr(Cells(zeile, 1), ":"))
            Select Case Inhalt
                Case "Name:"
                    Cells(zeile, 1) = Mid(Cells(zeile, 1), 6)
                    namezeile = zeile
                    zeile = zeile + 1
                Case "Comment:"
                    If namezeile > 0 Then
                        Cells(namezeile, 2) = Mid(Cells(zeile, 1), 9)
                        Rows(zeile).EntireRow.Delete
                    Else
                        Cells(zeile, 1) = Mid(Cells(zeile, 1), 9)
                    End If
                Case "Size:", "Complete Time:", "Save as:", "Referer:"
                    Rows(zeile).EntireRow.Delete
                    zeile = zeile - 1
                Case Else
                    zeile = zeile + 1
            End Select
        ElseIf Cells(zeile, 1) = "" Then
            Rows(zeile).EntireRow.Delete
        Else
            zeile = zeile + 1
        End If
    Loop Until Cells(zeile, 1) = "" And Cells(zeile, 1).End(xlDown).Row = Rows.Count
End Sub
Gruß, NoNet

Anzeige
AW: Liste per VBA auswerten: Zeile verschieben/lös
04.10.2007 15:21:16
Selma
Hallo NoNet,
es funktioniert prima. Vielen vielen Dank.
LG
Selma

Noch etwas anderes: Es muss doch "Referrer" heißen
04.10.2007 15:27:00
NoNet
Hallo Selma,
schön, dass das Makro wunschgemäss funktioniert.
Allerdings sollte man beachten dass es in korrektem Englisch "Referrer" heißen muss und nicht "Referer" !
Falls das irgendwann mal korrigiert wird, muss man das Makro entsprechend anpassen.
Gruß, NoNet

Anzeige
ok (owt)
04.10.2007 16:54:00
Selma
ok
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige