Change Array Formula to Non-Array and Add a "like" instead of "="

DinoMania

New Member
Joined
Oct 21, 2015
Messages
5
Hello.

I have an array formula that gives me the intended results, BUT the data is too large to use an array. Could anyone help me change the formula to a non-array function?

=INDEX('Order History'!E:E,MATCH(1, IF('Order History'!A:A=C3, IF('Order History'!C:C= "INITIAL ORDER SETUP",1)),0))

Also, instead of having 'Order History'!C:C= "INITIAL ORDER SETUP", I would like to just have it search for anything starting with "Initial".

Let me know if you need any other specifics. In advance, thank you for your patience and help.
 

Excel Facts

Why does 9 mean SUM in SUBTOTAL?
It is because Sum is the 9th alphabetically in Average, Count, CountA, Max, Min, Product, StDev.S, StDev.P, Sum, VAR.S, VAR.P.
To get away from the array sheet-formula you would have to deal with that in the VBA space. It would still be an array evaluation because that is inherent in the task you're working with.
"BUT the data is too large to use an array." Because your calculation takes long or fails? More memory... Use Access, (DAX and PowerQuery?) Switch to Manual calculations...
Or a good excuse for a new computer. Check out Lenovo for some good deals I7 machines.

Pardon the changes in cell references, but for the begins with part:
Code:
{=INDEX('Order History'!E:E,MATCH(1, IF('Order History'!A:A=C3, [B]IF(LEFT('Order History'!C:C,7)= "INITIAL"[/B],1)),0))}
 
Last edited:
Upvote 0
Try converting your data into a Table...

Code:
Ribbon > Insert > Tables > Table

Then reference the actual ranges in your formula, instead of whole columns. The ranges will automatically adjust as data is added/removed.
 
Upvote 0
Thank you both.

SpillerBD the formula works great. I just hate how long the array formulas take to process.

I love power query so far, and I need to learn how to make custom columns that reference a different table.
 
Upvote 0
Another option...

In F2 of Order History enter and copy down:

=A2&"|"&C2

Now you can invoke...

=INDEX(E:E,MATCH(C3&"|"&"INITIAL"&"*",F:F,0))
 
Upvote 0
I just hate how long the array formulas take to process.
Mine with 30k+ rows only takes 5 minutes to recalculate... Coffee break and some chat.;)
I am able to turn off calculations and/or change the formulations to values.
 
Upvote 0

Forum statistics

Threads
1,216,110
Messages
6,128,896
Members
449,477
Latest member
panjongshing

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