## Sort based on frequency row-wise

In this article I will demonstrate two techniques for counting per row. The first example is simple and straightforward. The second example is a bit more complicated but dynamic and automatic, you only need to provide a search string, everything else is calculated by array formulas.

The first example has this data table.

I want to count the value "C" per row. In cell I1, type: C.

In cell I2, type:

Copy cell I2 and paste to I3:I10.

The COUNTIF function counts the number of cells that meet a given condition.

There are 4 C's in row 2 so the formula returns 4 in cell I2. If you change the value in cell I1 to "B", the formulas in I2:I10 recalculates and return new values.

Let us sort the table. Select cell range A1:I10. Go to tab "Home" on the ribbon. Click "Sort & Filter" button. Click "Filter".

Drop down list arrows appear next to each header, see picture above. Click the arrow next to "C".

Click "Largest to smallest". The data table shows the count of "C" per row, sorted largest to smallest.

Learn more about the COUNTIF function.

Do you know why $I$1 in COUNTIF(B2:H2,$I$1) has dollar signs? Read this post:

Absolute and relative cell references

### Dynamic counting

Now on to a more interesting and complicated example. The formula here returns names sorted in column D based on the number of "C"s per row.

Change the value in cell B3 and the list in cell range D3:E11 is instantly changed.

I have applied conditional formatting to cell range A14:H22 so you can easily verify the calculated numbers in E3:E11.

**Array formula in cell D3:**

**Array formula in cell E3:**

Functions in this formula: INDEX, MATCH, LARGE, MMULT, ROW COUNTIF, IF

Interested in learning more about excel formulas? Check out the Advanced excel course.

### Download excel *.xlsx file

Count unique distinct values that meet multiple criteria

This post demonstrates how to build an array formula that counts unique distinct values based on criteria. What's on this […]

This article describes how to count unique distinct values. What are unique distinct values? They are all values but duplicates are […]

Count cells between a given value

jeyner asks: I need to count in a list the interval between the same value. Example list, 1-2-3-1-4-5-1-6-7-8-9-7-8-1 So the […]

Excelxor is such a great website for inspiration, I am really impressed by this post Which numbers add up to […]

Count overlapping days in multiple date ranges

The MEDIAN function lets you count overlapping dates between two date ranges. If you have more than two date ranges […]

Table of Contents Sort a column using array formula Two columns sorting by the second column Sort alphanumeric values I […]

Create a unique distinct sorted list containing both numbers text removing blanks

The image above demonstrates a formula in cell D3 that extracts unique distinct numbers and text values sorted from A […]

Sort dates within a date range

Array formula in D5: =SMALL(IF(($B$3:$B$12<=$E$3)*($B$3:$B$12>=$E$2), $B$3:$B$12, "A"), ROWS($A$1:A1)) How to create an array formula Copy array formula Select cell D5 […]

### 3 Responses to “Sort based on frequency row-wise”

### Leave a Reply

### How to comment

**How to add a formula to your comment**

<code>Insert your formula here.</code>

**Convert less than and larger than signs**

Use html character entities instead of less than and larger than signs.

< becomes < and > becomes >

**How to add VBA code to your comment**

[vb 1="vbnet" language=","]

Put your VBA code here.

[/vb]

**How to add a picture to your comment:**

Upload picture to postimage.org or imgur

Use the img tag, like this: <img src="Insert pic link here">

**Contact Oscar**

You can contact me through this contact form

[…] Take a look at the full article here: Count Per Row […]

Hi Oscar,

I have a problem and i cant figure it out, even if i'm seraching for 2 days.

I have the following situation:

A1, B1, C1, D1, E1, F1

where

A1 = nick

b1 = 10

c1 = zack

d1 = 15

e1 - john

f1 = 13

what formula should i use to get them ordered counting the numbers but names still being asociated, like this:

a1 = zack

b1 = 15

c1 = john

d1 = 13

e1 = nick

f1 = 10

hope i was clear...

Thank you

Have a nice day

[…] Denisa asks: […]