Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1480to1484
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

Zählenwenn zweidimensionales Array

Zählenwenn zweidimensionales Array
22.03.2016 15:56:35
SteffenS
Hallo,
ich habe folgendes Problem, wo ich noch keine Lösung gefunden habe und darum Eure Hilfe brauche.
Und zwar habe ich ein zweidimensionales Array mit 4 Spalten.
In der vierten Spalte möchte ich gern die Häufigkeit der Werte in Spalte 3 Zählen.
Wie kann ich dies erreichen.
Mein aktueller Ansatz ist bis jetzt:
For i = LBound(spArray) To UBound(spArray)
spArray(k, 1) = aArray(i) 'Wert
spArray(k, 2) = Mid(aArray(i), 2, 2)
spArray(k, 3) = Mid(aArray(i), 5, 5)
spArray(k, 4) = Application.WorksheetFunction.CountIf(spArray(1, 1), spArray(k, 3))
Next i
Danke Euch schon mal.
VG Steffen Schmerler

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Bin weiter aber habe noch eine Frage
22.03.2016 16:39:40
SteffenS
Hallo Zusammen,
ich habe es jetzt bis hierher geschafft:
Dim tmpAray As Variant
tmpArray = Application.WorksheetFunction.Index(spArray, 0, 3)
For i = LBound(spArray) To UBound(spArray)
If spArray(i, 1) "" Then
spArray(i, 4) = Application.WorksheetFunction.CountIf(tmpArray, spArray(i, 3))
End If
Next i
Leider erscheint bei der Ausführung immer die Meldung Objekt erforderlich.
Was mache ich falsch.
VG SteffenS

tmpArray ist kein (Range-)Objekt! Gruß owT
22.03.2016 19:04:16
Luc:-?
:-?

was meinst Du
23.03.2016 09:23:14
SteffenS
Hallo,
was meinst Du mit der Antwort, stehe irgendwie auf Schlauch.
Was kann ich tun damit es funktioniert
Danke nochmal
VG SteffenS

Anzeige
CountIf benötigt zwingend einen Bereich ...
23.03.2016 10:51:41
Luc:-?
…als 1.Argument, Steffen,
kein Variant-Datenfeld, wenn nicht gewährleistet ist, dass es ZellBezüge enthält.
Ansonsten siehe Rudis AW!
Luc :-?
Besser informiert mit …

AW: Zählenwenn zweidimensionales Array
23.03.2016 10:00:29
Rudi
Hallo,
das würde ich so machen:
Sub aaa()
Dim arr, oC As Object, i As Long
arr = Range(Cells(2, 1), Cells(Rows.Count, 1).End(xlUp).Offset(, 2))
ReDim Preserve arr(1 To UBound(arr), 1 To 4)
Set oC = CreateObject("scripting.dictionary")
For i = 1 To UBound(arr)
'Spalte 3 zählen
oC(arr(i, 3)) = oC(arr(i, 3)) + 1
Next
For i = 1 To UBound(arr)
'Anzahl eintragen
arr(i, 4) = oC(arr(i, 3))
Next
'Mach weiter
End Sub

Gruß
Rudi

Anzeige
Danke
23.03.2016 13:27:58
SteffenS
Mit der Lösung von Rudi hat es funktioniert.
Vielen lieben Dank schon mal.
VG SteffenS

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige