Friday 10 April 2015

3 Crazy Excel Formulas That Do Amazing Things

Digging Into Excel
With the right information, you can create a system that automatically calculates and recalculates results and reports from that raw data. Today, I’d like to dig a little further under the surface and show you how you can use some of the underlying formulas and other tools to make better use of Excel.

Cool Conditional Formatting With Formulas

One of the tools that I think people just don’t use often enough is Conditional Formatting. With the use of formulas, rules, or just a few really simple settings, you can transform a spreadsheet into an automated dashboard that shows you a lot about the information in the spreadsheet at just a glance.
To get to Conditional Formatting, you just click on the Home tab, and click on the “Conditional Formatting” toolbar icon.
crazyexcel1

Under conditional formatting, there are a bunch of options. Most of these are beyond the scope of this particular article, but the majority of them are about highlighting, coloring or shading cells based on the data within that cell. This is probably the most common use of conditional formatting – doing things like turning a cell red using logical less-than or greater-than formulas.
One of the lesser used – or known about – conditional formatting tools is the icon sets option, which provides you with a great set of icons you can use to turn an Excel data cell into a dashboard display icon.
crazyexcel2

I discovered this once I upgraded to Office 2013 and used conditional formatting in Excel 2013. I checked out the icon sets and saw these cool LED indicator lights that I had only really seen before in some of the factory automation displays I’ve programmed. When you click on “Manage rules”, it’ll take you to the Conditional Formatting Rules Manager. Depending on the data you selected before choosing the icon set, you’ll see the cell indicated in the Manager window, with the icon set you just chose.
crazyexcel3

When you click on “Edit Rule…”, you see the dialog where the magic happens. This is where you can create the logical formula and equations that will display the dashboard icon you want. In my example, I monitor time spent on different tasks versus my budgeted time. If I’ve gone over half my budget, I want a yellow light to display, and if I’m over budget, I want it to go red.
crazyexcel4

As you can see, I’m not really budgeting my time too well. Almost half of my time is spent way over what I’ve budgeted.
crazyexcel5

Time to refocus and better manage my time!

Look Up Items With the VLookup Function

Okay, maybe that isn’t crazy enough for you. Maybe you aren’t so excited about simple logical formulas turning lights on and off. Fine – if you’re an old-school Excel fiend and you like using more advanced Excel functions, then I’ve gone another one for you.
You are probably familiar with the VLookup function, which lets you search through a list for a particular item in one column, and return the data from a different column in the same row as that item. Unfortunately, the function requires that the item you’re searching for in the list is in the left column, and the data that you’re looking for is on the right, but what if they’re switched?
In the example below, what if I want to find the Task that I performed on 6/25/2013 from the following data?
crazyexcel6

In this case, your searching through values on the right, and you want to return the corresponding value on the left – opposite how VLookup normally works. If you read Excel pro-user forums you’ll find a lot of people saying this isn’t possible with VLookup and that you have to use a combination of Index and Match functions to do this. That’s not entirely true.
You can get VLookup to work this way by nesting a CHOOSE function into it. In this case, the formula would look like this:
“=VLOOKUP(DATE(2013,6,25),CHOOSE({1,2},E2:E8,A2:A8),2,0)”
What this function means in simple English is that you want to find the date 6/25/2013 in the lookup list, and then return the corresponding value from the column index. In this case, you’ll notice that the column index is “2”, but as you can see the column in the table above is actually 1, right?
crazyexcel7

That’s true, but what you’re doing with the “CHOOSE” function is manipulating the two fields. You’re assigning reference “index” numbers to ranges of data – assigning the dates to index number 1 and the tasks to index number two. So, when you type “2” in the VLookup function, you’re actually referring to Index number 2 in the CHOOSE function. Crazy, eh?
crazyexcel8

So now the VLookup uses the Date column and returns the data from the Task column, even though Task is on the left. Now that you know this little tidbit, just imagine what you can do!

Insane Nested Formulas to Parse Strings

As you can see, I’m trying to get a little crazier as we go, because I know there are always some of you out there that go, “…well that’s not crazy at ALL!!” I know, your standards are high and I’m trying to live up to them. If I’ve failed with my last two attempts, I bet I can appeal to your need for crazy with this particular formula.
There may be cases where you either import data into Excel from an outside source that is made up of a string separated by delimiters within the field itself. Once you bring in the data, you want to parse that data out into the individual components.
crazyexcel10

Here’s how this is done (see if you can mentally follow along with this insanity):
For the first field, to extract the leftmost item (the person’s name), you would simply use a LEFT function in the formula.
“=LEFT(A2,FIND(“;”,A2,1)-1)”
This searches the text string from A2, finds the “;” delimiter symbol, subtracts one for the proper location of the end of that string section, and then grabs the leftmost text to that point. In this case, that’s “Ryan”. Mission accomplished.
But what about the other sections? Well, to extract the parts on the right, you need to nest multiple RIGHT functions to grab the section of text up until that first “;” symbol, and perform the LEFT function on it again. Here’s what that looks like to extract the street number part of the address.
“=LEFT((RIGHT(A2,LEN(A2)-FIND(“;”,A2))),FIND(“;”,(RIGHT(A2,LEN(A2)-FIND(“;”,A2))),1)-1)”
It looks crazy, but it’s not hard to piece together. All I did is took this function:
“RIGHT(A2,LEN(A2)-FIND(“;”,A2))”
And inserted it into every place in the LEFT function above where there’s an “A2″. This correctly extracts the second section of the string.
Each subsequent section of the string needs another nest created. So now you just take the crazy “RIGHT” equation you had created for the last section, and then past that into a new RIGHT formula with the previous RIGHT formula pasted into itself wherever you see “A2″. Here’s what that looks like.
“(RIGHT((RIGHT(A2,LEN(A2)-FIND(“;”,A2))),LEN((RIGHT(A2,LEN(A2)-FIND(“;”,A2))))-FIND(“;”,(RIGHT(A2,LEN(A2)-FIND(“;”,A2))))))”
Then you take THAT formula, and place it into the original LEFT formula wherever there’s an “A2″. The final mind-bending formula looks like this:
“=LEFT((RIGHT((RIGHT(A2,LEN(A2)-FIND(“;”,A2))),LEN((RIGHT(A2,LEN(A2)-FIND(“;”,A2))))-FIND(“;”,(RIGHT(A2,LEN(A2)-FIND(“;”,A2)))))),FIND(“;”,(RIGHT((RIGHT(A2,LEN(A2)-FIND(“;”,A2))),LEN((RIGHT(A2,LEN(A2)-FIND(“;”,A2))))-FIND(“;”,(RIGHT(A2,LEN(A2)-FIND(“;”,A2)))))),1)-1)”
That formula correctly extracts “Portland, ME 04076″ out of the original string.
crazyexcel9

To extract the next section, repeat the above process all over again. Your formulas can get really loopy, but all you’re doing is cutting and pasting long formulas into itself, make long nests that work really well!

Conclusion

So there you have it. Were these formulas and techniques wild enough? Do you have any amazing formula tricks of your own that make up your Excel super-user toolbox? Share your input and feedback in the comments section below!

No comments:

Post a Comment