Makro zum Löschen von Zeilen mit dem gleichen Anfang

Dieses Thema Makro zum Löschen von Zeilen mit dem gleichen Anfang im Forum "Microsoft Office Suite" wurde erstellt von Tobias Krohn, 15. Apr. 2005.

Thema: Makro zum Löschen von Zeilen mit dem gleichen Anfang Hallo! Ich habe eine recht große Word-Datei, bei der ich mit einem Makro alle Zeilen löschen möchte, die mit einem...

  1. Hallo!

    Ich habe eine recht große Word-Datei, bei der ich mit einem Makro alle Zeilen löschen möchte, die mit einem bestimmten Wort beginnen. Dabei sollen allerdings die nachfolgenden Zeilen nicht hochrutschen. Kann mir wohl jemand helfen?

    Vielen Dank!
     
  2. Hallo Tobias Krohn,

    ich hoffe du meinst mit Zeilen Absätze.

    Für diesen Fall hab ich dir einen Makro gestrickt.

    Gruß Matjes :)
    Code:
    Sub ParagpraphenTextLoeschenWennMitWortBeginnt()
     -> Löscht den Text aller selektierten Paragraphen,
     -> die mit dem eingegebenen Anfangswort anfangen
      
      Dim s_Wort As String, s As String, x As Long, b_ok As Boolean
      Dim p_s As Paragraphs, p As Paragraph, l_selection As Long
      
     ->Prüfen, ob etwas selektiert ist
      l_selection = Selection.Range.End - Selection.Range.Start
      If l_selection = 0 Then
        MsgBox (Nichts markiert. Bitte markeiren Sie den Bereich.)
        Exit Sub
      End If
      
     ->Eingabe-Schleife
      s_Wort = 
      Do
       ->Eingabe
        s_Wort = InputBox( _
          Biite geben Sie das Anfangswort für die zu löschenden Paragraphen-Texte ein., _
          Paragraphen-Text löschen, wenn Text mit Anfangswort beginnt, s_Wort)
        
       ->Eingabe prüfen
        If s_Wort =  Then Exit Sub
        b_ok = True
        For x = 1 To Len(s_Wort)
          s = Mid(s_Wort, x, 1)
          Select Case s
            Case 0 To 9, a To z, A To Z, ä, Ä, ö, Ö, ü, Ü, ß, -, _
            Case Else
              MsgBox (x & . Zeichen unzulässig. & vbCrLf & Bitte korrigieren.)
              b_ok = False
              Exit For
          End Select
        Next
       ->Prüfung ok ?
        If b_ok Then Exit Do
      Loop
      
     ->selektierte Paragraphen merken
      Set p_s = Selection.Paragraphs
      
     ->Text der Absätze mit Anfangswort löschen
      For x = p_s.Count To 1 Step -1
       ->nächster Paragraph
        Set p = p_s(x)
       ->Anfangswort ?
        If s_Wort = Left(p.Range.Text, Len(s_Wort)) Then
         ->Text löschen
          p.Range.Text = Right(p.Range.Text, Len(vbCr))
        End If
      Next
    End Sub
     
  3. Zunächst vielen Dank für das Makro!

    Das Problem ist, dass es sich offensichtlich nicht um richtige Zeilen, sondern um mehrere Zellen in einer Zeile hintereinander handelt . Insgesamt drei Textfelder, das Wort des erste Textfeldes ist immer indentisch, die beiden nachfolgenden Textfelder sind immer unterschiedlich.

    Das Makro müsste also alle Textfelder mit dem bestimmten Inhalt finden, dann die Textfelder selbt und jeweils die beiden nachfolgenden Textfelder löschen. Wichtig ist zudem, dass sich die Zeilen nicht durch das Löschen verschieben.

    Ich bin für jede Hilfe dankbar!
     
  4. Hallo Tobias,

    schick mir doch mal die Beispiel-Datei. Dann schau ich mal wie die aufgebaut ist und passe den Makro entsprechend an. So ist das irreführend.

    Kann eine Tabelle sein, Textfelder ,...

    Gruß Matjes :)
     
Die Seite wird geladen...

Makro zum Löschen von Zeilen mit dem gleichen Anfang - Ähnliche Themen

Forum Datum
"Makro" zum Löschen eines einzelnen Cookies... Sonstiges rund ums Internet 17. Mai 2008
Excel: Mehrere Zeilen löschen/ausblenden (mit Makro) Microsoft Office Suite 13. Dez. 2007
StarOffice 7-Makros löschen "sich selbst" Windows XP Forum 13. Feb. 2007
Kopie von Lieferschein / Rechnung anlegen und Makro-Code löschen Microsoft Office Suite 7. Nov. 2005
Makro Zeile löschen abhängig von Zellen Inhalt <<Dringend>> Windows XP Forum 9. Sep. 2005