Clever-Excel-Forum

Normale Version: Zellen einer Zeile in andere Tabelle übernehmen mit Eingabemaske (VBA)
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hallo

ich war einige Tage privat verhindert und habe jetzt erst die letzte Anfrage gesehen. Man kann es so probierenü den Code ab Application.CutCıoyMode austauschen. Die Zeile mit "**" ist neu hinzugekommen und markiert zuerst nur die zu löschenden Zeilen mit "#" Zeichen. 

Der zweite Code ist eine For Next Schleife im Rückwaerts Modus!  Das muss beim Löschen so sein, weil beim Vorwaerts Löschen immer die aktuelle Zeile gelöscht wird, und der For Next Zaehler dabei durcheinander kommt! 

Bitte den Code zuerst in einer kopierten Datei testen, und rpüfen ob er einwandcfrei laeuft, oder versehentlich falsche Zeilen gelöscht! werden. 

mfg Gast 123

Code:
      'Kopiermodus zum Schluss ausschalten!
      Application.CutCopyMode = False
           
      '** Zeichen zum Löschen dieser Zeile setzen
      MTG.Cells(mtFind.Row, "A").Value = "##"
     
      Set mtFind = MTG.Range("K:K").FindNext(mtFind)
      If mtFind Is Nothing Then Exit Sub
   Loop Until Adr1 = mtFind.Address
 End With
 
 'markierte Zeilen löschen
 Call Markierte_Zeilen_löschen
Exit Sub
Fehler: MsgBox "unerwarteter Fehler:" & vbLf & Error()
End Sub



Sub Markierte_Zeilen_löschen()
Dim j As Long, lz1 As Long
 With Worksheets("Mitglieder")
    'Letzte Zeile in Spalte A suchen
    lz1 = .Cells(Rows.Count, 1).End(xlUp).Row
    For j = lz1 To 2 Step -1
      If InStr(.Cells(j, 1), "#") Then _
         .Rows(j).Delete shift:=xlUp
    Next j
 End With
End Sub
Hallo Gast 123,

das ist ja unglaublich, wie perfekt das funktioniert.
Bin mal wieder total beeindruckt.

Vielen, vielen Dank auch im Namen meiner Vorstandskollegen !

MfG
Gerhard
Seiten: 1 2 3