Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Duplikate in einer Spalte entfernen

Betrifft: Duplikate in einer Spalte entfernen von: JuriR
Geschrieben am: 22.10.2014 13:40:34

Hallo,

ich hoffe jemand kann mir da mit einem Macro helfen. Ich habe in der Spalte A eine Liste mit Wörtern, in der Spalte B habe ich auch eine Ansammlung an Wörtern. Ich brauche eine Lösung die alle Wörter in Spalte B löscht, die in Spalte A vorkommen.

Grüße

  

Betrifft: AW: Duplikate in einer Spalte entfernen von: {Boris}
Geschrieben am: 22.10.2014 14:28:11

Hi,

C1: =ZÄHLENWENN(A:A;B1)>0 und runterkopieren.
Anschließend Spalte C nach WAHR filtern und Einträge löschen.

VG, Boris


  

Betrifft: AW: Duplikate in einer Spalte entfernen von: fcs
Geschrieben am: 22.10.2014 14:42:13

Hallo Juri,

nachfolgend ein Makro, das entsprechende Löschungen ausführt

Gruß
Franz

Sub Loeschen_in_Spalte_B()
  'Löscht Zellen in Spalte B, die in Spalte A vorkommen
  Dim wks As Worksheet
  Dim Zelle_A As Range, Zelle_B As Range, bolGeloescht As Boolean
  Dim rngB As Range
  If MsgBox("Werte aus Spalte A in in Spalte B löschen?", vbQuestion + vbOKCancel, _
    "Löschen in Spalte B") = vbCancel Then Exit Sub
  Set wks = ActiveSheet
  With wks
    'Zellbeeich mit Daten in Spalte B
    Set rngB = .Range(.Cells(1, 2), .Cells(.Rows.Count, 2).End(xlUp))
    'Inhalte in allen Zellen in Spalte B löschen, die in Spalte A vorkommen
    For Each Zelle_A In .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)).Cells
      If Zelle_A <> "" Then
        Set Zelle_B = rngB.Find(what:=Zelle_A.Value, LookIn:=xlValues, _
              lookat:=xlWhole, MatchCase:=True)
        If Not Zelle_B Is Nothing Then
          Do
            Zelle_B.ClearContents
            bolGeloescht = True
            Set Zelle_B = rngB.FindNext(after:=Zelle_B)
          Loop Until Zelle_B Is Nothing
        End If
      End If
    Next Zelle_A
  End With
  'Leere Zellen in Spalte B löschen  
  If bolGeloescht = True Then
    rngB.SpecialCells(xlCellTypeBlanks).Delete shift:=xlShiftUp
  End If
End Sub



  

Betrifft: AW: Duplikate in einer Spalte entfernen von: JuriR
Geschrieben am: 22.10.2014 17:17:21

vielen Dank!


 

Beiträge aus den Excel-Beispielen zum Thema "Duplikate in einer Spalte entfernen"