Thema Datum  Von Nutzer Rating
Antwort
Rot VBA: Zeilen löschen Bedingung nicht erfüllt ist
24.01.2018 10:02:39 ChriizZy
*****
NotSolved
24.01.2018 12:38:15 Uwe
*****
NotSolved
24.01.2018 12:44:22 Gast70769
Solved

Ansicht des Beitrags:
Von:
ChriizZy
Datum:
24.01.2018 10:02:39
Views:
915
Rating: Antwort:
  Ja
Thema:
VBA: Zeilen löschen Bedingung nicht erfüllt ist

Hallo,

Ich habe eine Tabellenblatt mit alles drum und dran.

Die Zeile die ich überprüfen möchte fängt bei B (bzw. B3) an bis L

In diesen Zeilen stehen viele Buchstaben drin bzw. Wörter (je Zelle ein Buchstabe). Diese Zeilen die nur die Buchstaben "H", "K" oder "P" enthalten, möchte ich behalten

Die restlichen Zeilen will ich löschen, also nur den Inhalt, also clear statt delete.

Ich habe zwar schon eine Prozedur geschrieben, aber mein "Chef" meinte, dass die Leute aus der anderen Abteilung ab und zu vergessen in manchen Zeilen die Wörter (die logischerweise auch h, k und p enthalten können) kursiv zu machen. In dieser Prozedur lösche ich ja die kursiven.

Da manche nicht kursiv sind (und ich das ja zuvor nicht wissen kann) cleare ich manche Zellen nicht und speichere so auch falsche Informationen mit ab.

Nun meine Bitte an euch. Kann mir jemand dabei helfen? Ich weiß nämlich nicht wie ich Zeile für Zeile gehen soll. Habe zwar Lösungen gefunden, die bis zum ersten gefunden Inhalt in der Zeile gehen. Aber es kann auch sein, dass diese Wörter ja eben mit diesen Buchstaben anfangen und trotzdem gecleart werden sollen.

Dankeschön! :)

Public Sub clearContents()
    Dim c, rng As Range
     
    'Standort und Datum dürfen nicht gelöscht werden
    Set rng = ActiveSheet.Range("B3:L367")
     
    For Each c In rng
        Select Case c.Value
            Case "H", "K", "P":                              'Alle Spalten, bis auf die mit dem Inhalt "H", "P" und "K", werden gelöscht
                If c.Font.Italic = True Then
                    c.clearContents
                End If
            Case Else
                c.clearContents
        End Select
    Next c
     
    Set rng = Nothing
    Range("B3").Activate
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot VBA: Zeilen löschen Bedingung nicht erfüllt ist
24.01.2018 10:02:39 ChriizZy
*****
NotSolved
24.01.2018 12:38:15 Uwe
*****
NotSolved
24.01.2018 12:44:22 Gast70769
Solved