Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: vba doppelte werte nur einmal zählen

vba doppelte werte nur einmal zählen
07.01.2016 11:38:42
Gregor
Hallo
In einer Schlaufe definiere ich die erste und letzte Zeile des in einer Spalte zu zählenden Bereichs. In diesem Bereich möchte ich nun alle Werte zählen, aber doppelte nur einmal. Wie lautet dieser Code.
Im Forum fand ich diesbezüglich nur Vorschläge mit Formeln.
Danke und Gruss
Gregor

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vba doppelte werte nur einmal zählen
07.01.2016 11:48:57
Rudi
Hallo,
Sub aaaa()
Dim i As Long, iErste As Long, iLetzte As Long
Dim objCount As Object
Set objCount = CreateObject("scripting.dictionary")
iErste = 10
iLetzte = 100
For i = iErste To iLetzte
objCount(Cells(i, 1).Value) = 0
Next i
MsgBox objCount.Count
End Sub

Gruß
Rudi

Anzeige
AW: vba doppelte werte nur einmal zählen
07.01.2016 11:55:10
ransi
Hallo Gregor,
Willst du nur doppelte zählen oder auch 3-fache und 4-fache ?
Option Explicit

Sub machs()
    Dim myDic As Object
    Dim arr As Variant, out As Variant
    Dim erste As Long, letzte As Long
    Dim L As Long
    erste = 1
    letzte = 10000
    Set myDic = CreateObject("scripting.Dictionary")
    arr = Range("A" & erste & ":A" & letzte)
    For L = LBound(arr) To UBound(arr)
        If myDic.exists(arr(L, 1)) Then
            myDic(arr(L, 1)) = arr(L, 1) & " Mehrfach"
            Else:
            myDic(arr(L, 1)) = "irgendwas"
        End If
    Next
    out = Filter(myDic.items, " Mehrfach")
    MsgBox UBound(out) + 1 & " Mehrfache"
End Sub


ransi

Anzeige
AW: vba doppelte werte nur einmal zählen
07.01.2016 12:18:07
Gregor
Hallo zusammen
Vielen Dank für die Unterstützung. Ich will alle Werte nur einmal zählen, also einfache, doppelte, dreifache, usw.
Der Code von Rudi habe ich eingesetzt und ist perfekt.
Gruss Gregor
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Doppelte Werte nur einmal zählen in Excel


Schritt-für-Schritt-Anleitung

Um in Excel doppelte Werte nur einmal zu zählen, kannst du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und dann auf Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden VBA-Code ein:

    Sub DoppelteWerteZählen()
       Dim i As Long, iErste As Long, iLetzte As Long
       Dim objCount As Object
       Set objCount = CreateObject("scripting.dictionary")
    
       iErste = 10 ' Ersetze 10 mit der Zeilennummer, ab der du zählen möchtest
       iLetzte = 100 ' Ersetze 100 mit der letzten Zeilennummer
    
       For i = iErste To iLetzte
           objCount(Cells(i, 1).Value) = 0
       Next i
    
       MsgBox "Anzahl der einzigartigen Werte: " & objCount.Count
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, um die Anzahl der einzigartigen Werte in der angegebenen Spalte zu zählen.


Häufige Fehler und Lösungen

  • Fehler: "Typenübereinstimmung"

    • Stelle sicher, dass der Bereich, den du zählst, nur Werte enthält. Leere Zellen oder Fehlerwerte können zu diesem Problem führen.
  • Lösung:

    • Überprüfe den gewählten Bereich und entferne leere Zellen oder Fehler.
  • Fehler: "Objekt nicht gefunden"

    • Dieser Fehler tritt auf, wenn du versuchst, auf ein nicht existierendes Objekt zuzugreifen.
  • Lösung:

    • Stelle sicher, dass die Zellen im angegebenen Bereich tatsächlich Werte enthalten und dass der Bereich korrekt definiert wurde.

Alternative Methoden

Wenn du nicht mit VBA arbeiten möchtest, kannst du auch Formeln verwenden, um doppelte Werte nur einmal anzuzeigen. Eine Möglichkeit ist die Verwendung der Funktion EINDEUTIGE in Excel 365 oder Excel 2021.

  1. Wähle die Zelle aus, in der du die einzigartigen Werte sehen möchtest.
  2. Gib die folgende Formel ein:

    =EINDEUTIGE(A10:A100)

Diese Formel gibt alle einzigartigen Werte im Bereich zurück.

Für ältere Excel-Versionen kannst du die PivotTable-Funktion verwenden, um doppelte Werte zu zählen.


Praktische Beispiele

Angenommen, du hast folgende Werte in Spalte A:

A
1   Apfel
2   Apfel
3   Banane
4   Orange
5   Banane
6   Traube

Wenn du das oben genannte Makro ausführst, gibt es dir die Anzahl 4, weil die einzigartigen Werte "Apfel", "Banane", "Orange" und "Traube" sind.

Wenn du die EINDEUTIGE-Formel verwendest, wirst du die Liste Apfel, Banane, Orange, Traube erhalten.


Tipps für Profis

  • Verwende die ZÄHLENWENN-Funktion, um zu prüfen, wie oft ein Wert in einem bestimmten Bereich vorkommt, während du doppelte Werte ignorierst.

    =ZÄHLENWENN(A:A, "Apfel")
  • Wenn du doppelte Werte nur einmal anzeigen möchtest, kannst du die Datenfilter-Funktion in Excel verwenden, um eine Liste nur mit einzigartigen Einträgen zu erstellen.

  • Experimentiere mit benutzerdefinierten VBA-Funktionen, um spezifischere Anforderungen zu erfüllen, wie z. B. das Zählen von doppelten Werten nur unter bestimmten Bedingungen.


FAQ: Häufige Fragen

1. Wie kann ich in Excel doppelte Werte nicht zählen? Du kannst VBA verwenden, um nur einzigartige Werte zu zählen, oder die Funktion EINDEUTIGE in Excel 365/2021 verwenden.

2. Gibt es eine Formel, um doppelte Werte nur einmal anzuzeigen? Ja, die Formel EINDEUTIGE kann verwendet werden, um doppelte Werte zu eliminieren und nur einzigartige Werte anzuzeigen. In älteren Versionen kannst du eine PivotTable verwenden.

3. Wie zähle ich doppelte Werte mit einer Bedingung? Du kannst die ZÄHLENWENN-Funktion kombinieren mit Bedingungen oder VBA anpassen, um spezifische Kriterien zu berücksichtigen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige