Bin auf der Suche nach einer Formel oder VBA Funktion, die mir folgende Zahl berechnet. In Spalte A habe 3 verschiedene Namen, in F verschiedene Zahlen. Ich möchte die Anzahl Namen mit Werten auslesen, wobei die Namen gefiltert sind.
Beispiel:
Zeile A F
3 Mike -
12 Mike -
13 Mike -
14 Ute 12
20 Ute 13
25 Ute 12
62 Rolf 17
70 Rolf 15
76 Rolf 15
Also sollte das Resultat 2 sein.
Wie könnte man das machen ohne eine Monsterformel und Hilfszellen zu bauen ? oder gibts da schon was ?
Wie könnte man das machen ohne eine Monsterformel und
Hilfszellen zu bauen ? oder gibts da schon was ?
Hallo Snetto,
in Spalte F, steht da ein „-“ oder ist die Zelle leer?
Wird das „-“ bzw. „“ durch eine Formel erzeugt oder manuell eingetragen?
@Dudo, Snetto hat wohl eine gefilterte Liste. Mit diversen Namen in A. Jett will er die Anzahl der Namen wissen, die in F zumindest einmal einen Wert in einer Zelle haben.
In Spalte A gibt es 3 Einträge die unterschiedlich sind. Nun soll Excel aber erkennen, dass in Spalte F in den Zeilen Mike ein Strich „-“ ist und so soll „Mike“ nicht mitgezählt werden. Das heisst dann in Spalte A gibts 3 verschiedene Einträge, da Mike nur Striche hat… sollen die Einträge mit Mike nicht mit beachtet werden.
Gibt 3 - 1 = 2
in Spalte F, steht da ein „-“ oder ist die Zelle leer?
Wird manuel eingetragen
@Dudo, Snetto hat wohl eine gefilterte Liste. Mit diversen
Namen in A. Jetzt will er die Anzahl der Namen wissen, die in F
zumindest einmal einen Wert in einer Zelle haben.
aber schon da ist so eine Formel:
{=SUMME((VERGLEICH(A1:A10&B1:B10;A1:A10&B1:B10;0)=ZEILE(1:10)*(A1:A10=1)*(B1:B10""))*1)}
Da müßtest du die bedingung [=1] abändern in ["-"].
Wenn das gelingt, fehlt noch das mit den ausgeblendeten Zeilen.
Kleiner wird dadurch die Formel aber nicht
Ok… basteln tönt schon mal gut. Aber mir fehlen die nötigen
Kenntnisse. Etwas gehts schon, aber so eine Idee wäre
wertvoll.
Hallo Snetto,
Benutzung in Excel:
=Zaehl()
in ein Standardmodul:
Option Explicit
'
Function Zaehl() As Long
Dim Zei As Long, colC As New Collection
'Application.Volatile
On Error Resume Next 'wg. colC.Add
For Zei = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If Rows(Zei).Hidden = False Then
If Cells(Zei, 6) "-" Then
colC.Add key:=Cells(Zei, 1).Value, Item:=Cells(Zei, 1).Value
End If
End If
Next Zei
Zaehl = colC.Count
End Function