Replace FILTER function for Excel 2016 user

jgreer7322

New Member
Joined
Apr 22, 2023
Messages
15
Office Version
  1. 365
Platform
  1. Windows
Hi

I am by no means (at all) an excel expert, but here goes ... I have built a Welsh/english dictionary on O365 Excel, and have used the FILTER function to:

1. search for content in the 'Welsh' column, and display 3 rows (there is an example screenshot below), e.g. look for words that contain 'awr'
2. the same for the 'English' column
3. A search for words that start, or end with, up to three letters, e.g. 'lla'

It all seems to work fine, but ... I want to share the workbook with fellow students, at least of one whom is on Excel 2016, which doesn't support the FILTER function.

So the question is ... how would I rewrite the following for 2016 users?

=IFERROR(FILTER(B2:D4580,ISNUMBER(SEARCH(F1, B2:B4580))), "No Result")
=IFERROR(FILTER('Welsh English'!$B$2:$D$4800,ISNUMBER(SEARCH(C1,(LEFT('Welsh English'!$B$2:$B$4800, 3))))),"No result")

Columns B to D are: Welsh words, English words, Notes respectively, while F1 and C1 in the formulae above are the search boxes.

Thanks in advance for any help you can give!

Cheers.

Jim

Dictionary screenshot.JPG
 

Excel Facts

Show numbers in thousands?
Use a custom number format of #,##0,K. Each comma after the final 0 will divide the displayed number by another thousand
You need to create a helper column, where you have the SEARCH Function, which will return a 1. You will then have to use the following:
=IF(ROWS($B$2:B2)>COUNTIF([Helper Column],1),"",INDEX($B$2:$B$4580,AGGREGATE15,6,ROW($B$2:$B$4580)-ROW($B$1)/[Helper Column=1),ROWS($B$2:B2))
=IF(ROWS($B$2:B2)>COUNTIF([Helper Column],1),"",INDEX($C$2:$C$4580,AGGREGATE15,6,ROW($B$2:$$4580)-ROW($B$1)/[Helper Column=1),ROWS($B$2:B2))
=IF(ROWS($B$2:B2)>COUNTIF([Helper Column],1),"",INDEX($D$2:$D$4580,AGGREGATE15,6,ROW($B$2:$B$4580)-ROW($B$1)/[Helper Column=1),ROWS($B$2:B2))
 
Upvote 0
Solution
=IFERROR(FILTER(B2:D4580,ISNUMBER(SEARCH(F1, B2:B4580))), "No Result")
Just a note: There is no need for the IFERROR since the FILTER function already has a built-in optional argument to deal with the case where the filter returns no results. See cell I2 below.

I got this earlier, which seems to have worked
A slight word of warning: If any rows are subsequently inserted at the top of the worksheet, that C+S+E formula will return incorrect results.

Formulas that require C+S+E confirmation often cause problems when users edit formulas and forget to re-confirm that way or to select the relevant range first.
In columns N:O below I have shown an alternative that does not require the C+S+E confirmation. It requires normal entry then copy across your 3 columns and down as far as you might ever need. (Also, no issues with this one if more rows are inserted at the top).

Your original formula included to produce the results in columns E:G for comparison.

23 04 24.xlsm
ABCDEFGHIJKLMNO
1cggc
2azC2D2
3kbC3D3cyC4D4No ResultcyC4D4
4cyC4D4qcC6D6qcC6D6
5xdC5D5ccC8D8ccC8D8
6qcC6D6   
7aaC7D7   
8ccC8D8   
9bbC9D9   
Replace FILTER
Cell Formulas
RangeFormula
E3:G5E3=IFERROR(FILTER(B2:D4580,ISNUMBER(SEARCH(E1, B2:B4580))), "No Result")
I3I3=FILTER(B2:D4580,ISNUMBER(SEARCH(I1, B2:B4580)), "No Result")
M3:O9M3=IFERROR(INDEX(B:B,AGGREGATE(15,6,ROW($B$2:$B$4580)/ISNUMBER(SEARCH($M$1,$B$2:$B$4580)),ROWS(M$3:M3))),"")
Dynamic array formulas.
 
Upvote 0
Peter: As I said at the top: 'I am by no means (at all) an excel expert, but here goes ...' (ain't that the truth!). The original formulas were written with a great deal of googling involved; what would be a good book(s)/training to develop my current (almost nonexistent) Excel skills?

Cheers.

Jim
 
Upvote 0
Sorry, but I am not a good one for books/training suggestions. I gained most of my knowledge from work colleagues, built-in Help, lots of trial & error and lots of time spent in this forum.
However, one place to look would be under the MrExcel Publishing drop-down at the top of this forum.
 
Upvote 0

Forum statistics

Threads
1,223,885
Messages
6,175,187
Members
452,616
Latest member
intern444

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top