ich mal wieder eine Unterstützung.
Ich habe eine Tabelle, in der stehen ab D4 bis ende Namen.
Ende durch Spalte B bestimmt.
Ich möchte gern die Namen in Spalte H ab 4, auflisten und die doppelten
löschen.
Herzlichen Dank im Voraus,
gruß kurt w
H | I | J | K | L | |
3 | HTTP://WWW.excelformeln.de/formeln.html?welcher=194 | ||||
4 | Name1 | ||||
5 | Name2 | ||||
6 | Name3 | ||||
7 | Name4 | ||||
8 | Name5 | ||||
9 | Name6 | ||||
10 | Name7 | ||||
11 | |||||
12 |
verbundene Zellen |
H3:L3 |
verwendete Formeln | |||
Zelle | Formel | Bereich | N/A |
H4 | {=INDEX(D: D;MIN(WENN(D4: D24<>"";ZEILE(4:24))))} | $H$4 | |
H5:H12 | {=WENNFEHLER(INDEX(D: D;VERGLEICH(1;(ZÄHLENWENN($H$4:H4;$D$4:$D$24)=0)*($D$4:$D$24<>"");0)+3);"")} | $H$5 |
Excel-Inn.de |
Hajo-Excel.de |
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007 |
Add-In-Version 18.17 einschl. 64 Bit |
Range("I4:I" & Cells(Rows.Count, 9).end(xlup).Row).FormulaR1C1 = "=CountIf(C4,RC8)"
Alternativ bietest sich hier auch die Auswertung mit Hilfe der Pivottabelle an.
H | I | J | K | L | |
3 | HTTP://WWW.excelformeln.de/formeln.html?welcher=194 | ||||
4 | Name1 | 3 | |||
5 | Name2 | 3 | |||
6 | Name3 | 3 | |||
7 | Name4 | 3 | |||
8 | Name5 | 3 | |||
9 | Name6 | 3 | |||
10 | Name7 | 3 | |||
11 | |||||
12 | |||||
13 |
verbundene Zellen |
H3:L3 |
verwendete Formeln | |||
Zelle | Formel | Bereich | N/A |
H4 | {=INDEX(D: D;MIN(WENN(D4: D24<>"";ZEILE(4:24))))} | $H$4 | |
H5:H13 | {=WENNFEHLER(INDEX(D: D;VERGLEICH(1;(ZÄHLENWENN($H$4:H4;$D$4:$D$24)=0)*($D$4:$D$24<>"");0)+3);"")} | $H$5 | |
I4:I13 | =WENN(H4="";"";ZÄHLENWENN(D4:$D$24;H4)) |
Excel-Inn.de |
Hajo-Excel.de |
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007 |
Add-In-Version 18.17 einschl. 64 Bit |
dim LetzteZeile as long
LetzteZeile = Cells(Rows.count, 2).end(xlup).row
Range("D4:D" & LetzteZeile).Copy Range("H4")
Range("H4:H" & letzteZeile).RemoveDuplicates 1, xlno
c) mit Formel: siehe Hajos Beitrag
Sub NamenUndAnzahl()
Dim dic As Object
Dim arrNamen
Dim z As Long
Set dic = CreateObject("scripting.dictionary")
arrNamen = Range("D4:D" & Cells(Rows.Count, 2).End(xlUp).Row).Value
For z = 1 To UBound(arrNamen, 1)
dic(arrNamen(z, 1)) = dic(arrNamen(z, 1)) + 1
Next
Range("H4").Resize(dic.Count, 1).Value = WorksheetFunction.Transpose(dic.keys)
Range("I4").Resize(dic.Count, 1).Value = WorksheetFunction.Transpose(dic.Items)
End Sub
Gruß Daniel