I have a map that I want to separately count the patterns of different numbers.

Without VB, I want to be able to create a dynamic counter that will be able to count the patterns of numbers.

For example:

I want to count how many times, even if it overlaps that this pattern occurs in the map

```
2 2
2 2
```

Counting I can see the pattern occurs six times but I’m struggling to create a simple array formula that will be able to do so

I’ve been told of success with and IF function with nested AND functions so I know it can be done without VB.

Use the formula

```
=COUNTIFS(A1:E15,2,B1:F15,2)
```

notice how the two areas are adjacent – one column offset from each other.

You can extend this to find two-by-two regions:

```
=COUNTIFS(A1:E14,2,B1:F14,2,A2:E15,2,B2:F15,2)
```

just be very careful about how the different ranges are offset.

An alternative way to write this which, I suspect, will be more efficient for large ranges is:

```
=SUMPRODUCT((A1:E14=2)*(B1:F14=2)*(A2:E15=2)*(B2:F15=2))
```

Tags: arraysexcel