Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1176to1180
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Anzahl aus "Zählen ohne Duplikate" in VBA

Anzahl aus "Zählen ohne Duplikate" in VBA
urmila
Hallo zusammen, und guten Morgen...
zu meinem Problem gibts diverse Beispiele, doch nicht das wonach ich suche....
Ich habe eine Liste, da stehen zig-viele Werte, die mehrmals (nicht durcheinander sonder schon sortiert) auftauchen. Ich will nicht nur das Zählen ohne Duplikate, sondern auch die Anzahl haben.
Im Internet habe ich diese (häufig vorkommende) Formel gefunden
=SUMME(WENN(A3:A650"";1/ZÄHLENWENN(A3:A650;A3:A650)))
Das ist ja was ich brauche, doch ich würde das gerne in VBA Skript, z.B. in MsgBox dargstellt haben (also die Anzahl gesamt ohne Duplikate)
Ich weiß auch dass ich diesen Wert in einer Zelle eintragen kann und im MsgBox den Zellwert ausgeben kann, doch das will ich nicht.....da ich die Tabelle ohne Formeln haben möchte.....
Ich hoffe ihr könnt mir helfen
Danke und LG
Urmila

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
vielleicht so? Gruß
09.09.2010 08:29:26
robert

Sub TT()
MsgBox Anzahl
End Sub

Function Anzahl()
Dim wks As Worksheet, rngC As Range, objCounter As Object
Set objCounter = CreateObject("scripting.dictionary")
For Each wks In Worksheets
For Each rngC In wks.Range("a3:a650")
If rngC  "" And Not objCounter.exists(rngC.Value) Then _
objCounter.Add rngC.Value, rngC.Value
Next
Next
Anzahl = objCounter.Count
End Function

danke robert, das wars.... :-)
09.09.2010 09:08:02
urmila
LG
Urmila
Oder so...
09.09.2010 09:01:44
JogyB
Hallo Urmila,
ganz kurz:
MsgBox Evaluate("=SUM(IF(A3:A650"""",1/COUNTIF(A3:A650,A3:A650)))")
Die Laufzeit könnte bei Roberts Lösung besser sein, habe ich jetzt aber nicht probiert.
Gruß, Jogy
Anzeige
auch dir danke Jogy....klappt auch
09.09.2010 09:10:12
urmila
LG
Urmila
AW: noch eine Bitte
09.09.2010 09:36:22
urmila
Sorry,
habs vergessen nachzufragen wie ich das Tabellenblatt z.B. Rot ansprechen könnte....
Danke und lieben Gruß
Urmila
AW: noch eine Bitte
09.09.2010 10:24:38
Hajo_Zi
Hallo Urmilla,
einfach in Excel mal testen
=SUMME(WENN(Rot!A3:A650"";1/ZÄHLENWENN(A3:A650;A3:A650)))

vielleicht doch eher...
09.09.2010 10:31:45
JogyB
so:
=SUMME(WENN(Rot!A3:A650"";1/ZÄHLENWENN(Rot!A3:A650;Rot!A3:A650)))
Gruß, Jogy

81 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige