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

Forumthread: zaehle wenn mit 2 kriterien in vba

zaehle wenn mit 2 kriterien in vba
kirsche
hallo leute,
ich bin hier schon am verzweifeln und hoffe auf eure hilfe. die recherche hat mich leider nicht weiter gebracht.
ich habe zwei tabellen. in tabelle 1 stehen die werte in spalte a und g, welche das suchkreterium beinhalten.
A G
1 1
2 2
3 1
1 1
1 2
2 1
in tabelle 2 möchte ich nun die anzahl der Kombi von spalte A und dem Wert 1 zählen. in meinem beispiel ergäbe das 2.
das ganze brauche ich per vba, denn es sind mehr als 10000 einträge über 5 spalten.
ich bedanke mich im voraus für eure hilfe.
gruß kirsche
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: zaehle wenn mit 2 kriterien in vba
02.07.2009 17:12:02
Tino
Hallo,
hier mal was mit VBA, Kommentare stehen im Code.
Function CheckSum(meAr1, meAr2, Wert1, Wert2) As Long
Dim A As Long, LZaehler As Long
For A = Lbound(meAr1) To Ubound(meAr1)
 If meAr1(A, 1) = Wert1 And meAr2(A, 1) = Wert2 Then LZaehler = LZaehler + 1
Next A
CheckSum = LZaehler
End Function

Sub Beispiel()
Dim meAr1, meAr2
Dim Bereich As Range
Dim Ergebnis As Long

Set Bereich = Range("A1", Cells(Rows.Count, 1).End(xlUp))
meAr1 = Bereich
meAr2 = Bereich.Offset(0, 6)

'Übergabe meAr1 = z. Bsp. Range("A1:A10") als Area 
'Übergabe meAr2 = z. Bsp. Range("G1:G10") als Area 
'Ar1 und Ar2 sollten die gleiche größe haben 
'Wert1 = Werte suchen in Spalte A 
'Wert2 = Werte Suchen in Spalte G 
Ergebnis = CheckSum(meAr1, meAr2, 1, 1)

MsgBox Ergebnis
End Sub


Gruß Tino

Anzeige
AW: zaehle wenn mit 2 kriterien in vba
02.07.2009 19:57:27
kirsche
hallo tino,
danke für deine hilfe, ich komme allerdings nicht so recht klar mit dem makro. vielleicht hänge ich schon zu lange über dem problem ;-((
ich habe mir mit dem teilergebnis und nem filter nun geholfen. trotdem danke ;-))
gruß kirsche
AW: zaehle wenn mit 2 kriterien in vba
02.07.2009 17:55:31
ransi
HAllo
Schau dir auch mal dies an:
Option Explicit


Public Sub test()
Dim Arr1
Dim Arr2
Dim myDic
Dim L As Long
Arr1 = Tabelle1.Range("A:A")
Arr2 = Tabelle1.Range("G:G")
Set myDic = CreateObject("Scripting.Dictionary")
For L = LBound(Arr1) To UBound(Arr1)
    If Arr1(L, 1) = "1" Then myDic(Arr1(L, 1) & "--" & Arr2(L, 1)) = myDic(Arr1(L, 1) & "--" & Arr2(L, 1)) + 1
Next
Tabelle2.Range("A1").Resize(myDic.Count) = WorksheetFunction.Transpose(myDic.keys)
Tabelle2.Range("B1").Resize(myDic.Count) = WorksheetFunction.Transpose(myDic.items)
End Sub

ransi
Anzeige
Thema verfehlt...
02.07.2009 17:58:17
ransi
Ziehe den letzten Beitrag zurück.
ransi
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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