mit VBA Zellen löschen
#21
Fehler beim Kompilieren:
Mehrfachdeklaration im aktuellen Gültigkeitsbereich
Top
#22
Hallo,

du hattest im Post #14 ein Makro ohne Sub ... und End Sub gepostet. Diese habe ich ergänzt und das mußt Du durch deine tatsächliche Version ändern. bzw. kürzen.
Gruß Stefan
Win 10 / Office 2016
Top
#23
das hab ich gemacht ^^, ich hab etwas angepasst, jetzt kommt kein Fehler.Funktionieren tut es trotzdem nicht Huh



Sub prcX()
  Dim x, rSuchErgebnis As Range
  Dim I As Long
  Dim rDaten As Range
 
  Application.ScreenUpdating = False
 
  With Worksheets("Zahlen zählen")
     
      Set rDaten = Range("TabelleRecherche")
      For I = rDaten.Rows.Count To 1 Step -1  ' Range("TabelleRecherche").Resize(Range("TabelleRecherche").Rows.Count, 1)
     
      If LCase(rDaten.Cells(I, 1).Value) = "x" Then
     
        Set rSuchErgebnis = .Range("A4:A" & .Cells(Rows.Count, "A").End(xlUp).Row).Find(what:=rDaten.Cells(I, 3).Value, LookIn:=xlValues, Lookat:=xlWhole)
        If Not rSuchErgebnis Is Nothing Then
            Do
              'namen vergleichen auch wenns ne fast direkte referenz ist
              If (rDaten.Cells(I, 3).Value & rDaten.Cells(I, 4).Value) = (rSuchErgebnis.Value & rSuchErgebnis.Offset(0, 1).Value) Then
                  rSuchErgebnis.Resize(1, 5).ClearContents 'Delete xlShiftUp 'zeile löschen
                  rDaten.Cells(I, 1).ClearContents  'x entfernen
              End If
             
              Set rSuchErgebnis = Range("A4:A" & .Cells(Rows.Count, "A").End(xlUp).Row).FindNext(rSuchErgebnis)
             
            Loop While Not rSuchErgebnis Is Nothing
        End If
      End If
     
      Next
     
  End With

End Sub
Top
#24
Hallo,

da fehlt in der Codezeile mit dem FindNext noch ein Punkt vor dem Range

Code:
Set rSuchErgebnis = .Range("A4:A" & .Cells(Rows.Count, "A").End(xlUp).Row).FindNext(rSuchErgebnis)
Gruß Stefan
Win 10 / Office 2016
Top
#25
geht leider nicht. hier werden beide mit gleichen Nachnamen gelöscht.
Top
#26
Hallo,

Du suchst ja auch nur in einer Spalte.

Nachtrag:

Nach nochmaligen Betrachten deiner Tabellen, habe ich es bemerkt. Ändere den Code so ab

Code:
Sub prcX()
   Dim x, rSuchErgebnis As Range
   Dim I As Long
   Dim rDaten As Range
   Dim strFirstTreffer As String
  
   Application.ScreenUpdating = False
  
   With Worksheets("Zahlen zählen")
      
      Set rDaten = Range("TabelleRecherche")
      For I = rDaten.Rows.Count To 1 Step -1  ' Range("TabelleRecherche").Resize(Range("TabelleRecherche").Rows.Count, 1)
      
      If LCase(rDaten.Cells(I, 1).Value) = "x" Then
      
         Set rSuchErgebnis = .Range("A4:A" & .Cells(Rows.Count, "A").End(xlUp).Row).Find(what:=rDaten.Cells(I, 3).Value, LookIn:=xlValues, Lookat:=xlWhole)
         If Not rSuchErgebnis Is Nothing Then
            strFirstTreffer = rSuchErgebnis.Address
            Do
               'namen vergleichen auch wenns ne fast direkte referenz ist
               If (rDaten.Cells(I, 3).Value & rDaten.Cells(I, 4).Value) = (rSuchErgebnis.Value & rSuchErgebnis.Offset(0, 1).Value) Then
                  rSuchErgebnis.Resize(1, 5).ClearContents 'Delete xlShiftUp 'zeile löschen
                  rDaten.Cells(I, 1).ClearContents  'x entfernen
               End If
               Set rSuchErgebnis = .Range("A4:A" & .Cells(Rows.Count, "A").End(xlUp).Row).FindNext(rSuchErgebnis)
            Loop While strFirstTreffer <> rSuchErgebnis.Address
         End If
      End If
      
      Next
      
   End With

End Sub
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Enclave
Top
#27
Objektvariable oder With-Blockvariable nicht festgelegt

Will nicht  16
Top
#28
Hallo,

für mich nicht reproduzierbar, da mir in deiner Datei in den entsprechenden Spalten auf den Tabellenblättern die Daten fehlen.
Gruß Stefan
Win 10 / Office 2016
Top
#29
Auf der Seite Recherche hast du 2x Spohn bei mir funktioniert es nicht^^


Angehängte Dateien
.xlsm   Mittagspausen_Muster.xlsm (Größe: 612,79 KB / Downloads: 1)
Top
#30
Hallo,

kann Spohn J auf der Seite Recherche zweimal vorhanden sein?
Gruß Stefan
Win 10 / Office 2016
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste