Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Zeilen mit Makro asulesen und in neues Tabelleblatt schreiben





Frage

Hallo ich hoffe hier kann mir weitergeholfen werden, müsste aus einer Excel-Tabelle wenn möglich mit einen Makro(Command Button) in der Spalte D1-D4067 gewisse Wörter, Abkürzungen finden wie z.B. FGH, nach Auffinden des Wortes sollte er mir die komplette Zeile(n) auf ein neues Tabellenblatt kopieren, kann dann auch gerne auf dem durchsuchten Tabellenblatt gelöscht werden (kann muss aber nicht). Danke schon mal für die Unterstützung im vorraus Kay

Antwort 1 von schnallgonz

Hallo Kay,
kopiere folgenden Code in ein Standardmodul und weise das Makro einer Schaltfläche zu:

Sub SuchKopier()
´sucht String aus Inputbox in Tabelle 1, Spalte F und kopiert
´alle Zeilen mit Fund in Spalte F in neues Blatt = Name Suchbegriff
Dim zaehler1 As Long
Dim suche1 As Range
Dim letzte As Long
Dim such As String
´Eingabedialog für Suchbegriff und neues Blatt anlegen
 such = InputBox("Suchbegriff eingeben", "Finden und Zeilen kopieren")
 If such = "" Then Exit Sub
 Worksheets.Add.Move After:=Worksheets(Worksheets.Count)
 ActiveSheet.Name = such
 
With Worksheets(such)

    For zaehler1 = 1 To Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
      ´In Spalte F suchen
      Set suche1 = Worksheets(1).Range("F" & zaehler1 & ":F" & _
      Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row).Find(such)

If Not suche1 Is Nothing Then
    ´gefundene Zeilen kopieren, falls löschen gewünscht,
    ´"Copy" durch "Cut" ersetzen
    Sheets(1).Rows(suche1.Row).Copy
    letzte = .UsedRange.SpecialCells(xlCellTypeLastCell).Row
    .Rows(letzte + 1 & ":" & letzte + 1).Insert Shift:=xlDown
    Sheets(1).Application.CutCopyMode = False
    zaehler1 = suche1.Row
End If
Next zaehler1
End With
End Sub



Es sucht im Blatt 1 in Spalte F nach dem Suchbegriff, der in der Eingabebox eingegeben wurde und kopiert alle Zeilen in ein neues Blatt. Dieses Blatt wird an das Ende der Mappe gestellt und erhält als Blattnamen den Suchbegriff aus der Eingabebox.
Bei der "Cut"-Variante hast Du anschließend im Blatt 1 leere Zeilen. Am besten Daten sortieren, dann stehen die am Ende, sind also "weg".

mfg
schnallgonz

Ich stimme mit der Mathematik nicht überein.
Ich meine, dass die Summe von Nullen eine gefährliche Zahl ist. (S.J. Lec)

Antwort 2 von schnallgonz

Oh,
wieso habe ich Spalte F genommen, Du willst Spalte D!
Ersetze also
Set suche1 = Worksheets(1).Range("F" & zaehler1 & ":F" & _

durch
 Set suche1 = Worksheets(1).Range("D" & zaehler1 & ":D" & _


Vielleicht noch die Kommentierungen von F auf D umstellen
gruß
schnallgonz

Antwort 3 von Kay789

Danke schnallgonz funtioniert einwandfrei