Solved

# Volatile formula's, speeding up calculations and match first and last name in separate columns  to return value from a third.

Posted on 2016-10-28
45 Views
Hi,
First time posting as I'm struggling with a formula that I thought was pretty good and took me awhile to write, as I'm not exactly an expert with Excel. Anyway I'm not ashamed to say I need the help.

The gist of it is simple, the formula is not. Basically I have a list of locker numbers and employees, and other info but I can alter formulas to suit. What I need to do is rather than concatenate the names I want to, in a separate tab, match the surname in column A and the first name in column B to the list of names with locker numbers,surname in A, first name in B, and return column C with the locker number in to the formula cell, whilst leaving this cell blank for missing info in cells containing no names or locker numbers.

They may have several garments and I need to know the locker number on the sheet for each one so the formula is to be dragged down to find the locker for each employee for all their garments, which will be the same locker number for that employee.

The formula I have wrote I believe is classed as a volatile formula and as such is taking far too long to calculate when I amend one of the connected cells. I know you can turn off the calculate options to populate fields but the people who will be using the spreadsheet won't be as clued up on Excel.

Here is the formula currently in place:

=IF(OR(A2=0,B2=0)," ",IF(LOOKUP(2,1/(('Individual PPE'!A:A='Full Wearer and ID Code List'!A2)*('Individual PPE'!B:B='Full Wearer and ID Code List'!B2)),'Individual PPE'!E:E)=0," ",LOOKUP(2,1/(('Individual PPE'!A:A='Full Wearer and ID Code List'!A2)*('Individual PPE'!B:B='Full Wearer and ID Code List'!B2)),'Individual PPE'!E:E)))

It works as intended apart from slowing the sheet down to a halt when amendmending info.

Can someone please advise a way around this or a rejigged formula that will not be volatile and calculate quicker?

Neil
0
Question by:Neil Hughes
• 3
• 3

LVL 48

Expert Comment

HI,

Do you really need to calculate it on the whole columns?

Regards
0

Author Comment

Hi,

I understand it's easier to hide a column and concatenate the info but this is a sheet I'm putting together to monitor workwear on each site individually within our group. By hiding cells and trying to account for so many different variations across the group i.e. 50 employee's on one site 200 on another, I thought it best to keep all columns visible and allow people to drag down the formula's for additional employees etc as and when they add them or take them off.

By hiding columns and cells required for working out certaain formulas, should something go amiss there's not a visible solution. This is why I wanted a formula in a cell that matches the sets of columns rather than a hidden one with the names concatenated.

I hope this makes sense.

Thank you,
0

LVL 48

Accepted Solution

Rgonzo1971 earned 500 total points
why don't you use 'Individual PPE'!A1:A10000 instead of 'Individual PPE'!A:A
0

Author Comment

Will that make a difference?
0

LVL 48

Assisted Solution

Rgonzo1971 earned 500 total points
it should since it will reduce significantly the number of calculations Excel has to do
'Individual PPE'!\$A\$1:\$A\$10000
0

Author Comment

Hey,
Thank you very much for this.

It has effectively reset the speed of calculations to what it is normally, more or less instant.

Appreciate the help. Makes me chuffed to bits that the time I put into that formula isn't wasted too and that it does work, and just needed the final touches adding to it.

Thanks again.

Neil
0

## Featured Post

### Suggested Solutions

An Outlet in Cocoa is a persistent reference to a GUI control; it connects a property (a variable) to a control.  For example, it is common to create an Outlet for the text field GUI control and change the text that appears in this field via that Ou…
Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
The goal of this video is to provide viewers with basic examples to understand recursion in the C programming language.
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.