x = 0
For Each cell in Sheets("01").Range("A:A").Cells
If cell.Value = "aaa" And cell.Offset(0, 1).Value = "bbb" Then
x = x+1
End If
Next cell
MsgBox x
Gibt es einen kürzeren Weg, pls?Wie wird in mehreren Spalten gezählt?
x = 0
For Each cell in Sheets("01").Range("A:A").Cells
If cell.Value = "aaa" And cell.Offset(0, 1).Value = "bbb" Then
x = x+1
End If
Next cell
MsgBox x
Gibt es einen kürzeren Weg, pls?Wie wird in mehreren Spalten gezählt?
Sie können dies tun, mit einer Formel, wie diese
(Excel 2007 oder höher)
=COUNTIFS(A:A,"aaa",B:B,"bbb")
(Excel 2003 oder früher)
=SUMPRODUCT(--(A:A="aaa")*--(B:B="bbb"))
Oder, wenn Sie müssen tun Sie es in VBA, verwenden Sie Evaluate
MsgBox Evaluate("=COUNTIFS(A:A,""aaa"",B:B,""bbb"")")
MsgBox Evaluate("=SUMPRODUCT(--(A:A=""aaa"")*--(B:B=""bbb""))")
EDIT basierend auf Ihren Kommentar
Wenn rDat
und rSec
sind Range
‚s, und ct
ist das Blatt CodeName
tun es wie folgt
Dim rDat As Range
Dim rSec As Range
Set rDat = ct.[A:A]
Set rSec = ct.[B:B]
ct.Range("C6").Value = Evaluate("=COUNTIFS(" & rDat.Address(, , , True) & " ,""a""," & rSec.Address(, , , True) & ",""1"")")
Wenn ct
das Blatt Name
, verwenden Sie diese
Dim ws As Worksheet
Dim rDat As Range
Dim rSec As Range
Set ws = ActiveWorkbook.Worksheets("ct")
Set rDat = ws.[A:A]
Set rSec = ws.[B:B]
ws.Range("C6").Value = Evaluate("=COUNTIFS(" & rDat.Address(, , , True) & " ,""a""," & rSec.Address(, , , True) & ",""1"")")
Wenn rDat
und rSec
Strings sind, verwenden Sie diese
Dim ws As Worksheet
Dim rDat As String
Dim rSec As String
Set ws = ActiveWorkbook.Worksheets("ct")
rDat = "ct!A:A"
rSec = "ct!B:B"
ws.Range("C6").Value = Evaluate("=COUNTIFS(" & rDat & " ,""a""," & rSec & ",""1"")")
Eine weitere Option (für rDat
, rSec
als Bereiche)
ct.Range("C6").Value = Application.WorksheetFunction.CountIfs(rDat, "a", rSec, "1")
Chris, versuchte ich 'ct.Range (" C6 "). Wert = Auswerten (" = COUNTIFS (rDat, "a" ", rSec," "1" ")") ein #NAME-Fehler. ct ist ein Blatt, rDat und rSec sind definierte Bereiche. Excel 2010 – Alegro
Vielen Dank. Gelöst – Alegro
Schade, dass SUMPRODUCT in Google Spreadsheets nicht funktioniert. –
möglich Duplikat [Countif mit mehreren OR Kriterien] (http://stackoverflow.com/questions/8726627/countif-with-multiple-or-criteria) – brettdj