KPI in Power Pivot Challenge 01

Today, we are going to address our first chal­lenge. The chal­lenge is to cre­ate KPI in the Pow­er Piv­ot bas­ing on an aver­age blood pres­sure. We want to cal­cu­late our aver­ages bas­ing on weeks, as it’s more com­pli­cat­ed that cal­cu­lat­ing month­ly averages :).

For indi­vid­u­als — deter­mine the aver­age month­ly ( for ambi­tious week­ly) upper blood pres­sure KPIs. We assume that if it is in the range of 110 — 130 it is Good, if it is in the range of 100 — 110 or 130 ‑140 it is OK, and if it is above or below these ranges, it is Bad. 

KPI in Pow­er Piv­ot | Chal­lenge 01

We have our Piv­ot with one cell select­ed. Let’s go to the Pow­er Piv­ot tab (1), then to the Add to Data Mod­el com­mand (2) (Fig. 1)

Add do Data Model command
Fig. 1 Add do Data Mod­el command

We can change here our date for­mat into the one with­out time (Fig. 2)

 Changing the Date format
Fig. 2 Chang­ing the Date format

Now, we have to cre­ate an aver­age bas­ing on the Upper blood pres­sure col­umn. We basi­cal­ly select one cell in the cal­cu­la­tion area (1), then go to the Home tab (2), then choose the Aver­age com­mand (3) (Fig. 3)

Average command
Fig. 3 Aver­age command

The Pow­er Piv­ot did the cal­cu­la­tion auto­mat­i­cal­ly for us. I’ll just change the name so that it’s short­er. Let’s leave only ‘pres­sure’. Now, let’s change the for­mat into Dec­i­mal Num­ber (Fig. 4)

 Decimal number command
Fig. 4 Dec­i­mal num­ber command

When we have the aver­age with two dec­i­mal places, we can start cre­at­ing a week col­umn, because it’s hard to group by weeks in the Pow­er Piv­ot. Let’s call this col­umn Week­Num. Then we can use exact­ly the same func­tion, which is the WEEKNUM func­tion bas­ing on the Date col­umn. If we want our week to start on Mon­day, we have to write 2 (Fig. 5)

=WEEKNUM([Date],2)

Creating a WeekNum column
Fig. 5 Cre­at­ing a Week­Num column

Let’s press Enter, and we have our col­umn with week num­bers. All weeks start from Mon­days. For some peo­ple this solu­tion would be enough. How­ev­er, I pre­fer to have the start day and the end day of the week. Let’s cre­ate anoth­er col­umn. This time I’ll call it week­Text. Let’s write ‘Date’. Then, we have to sub­tract the num­ber of the week­day. To do so, we can use the WEEKDAY func­tion again bas­ing on the Date col­umn. Now, we have three options of num­ber­ing the week­days. 1- Sunday=1 through Saturday=7, 2 — Monday=1 through Sunday=7, 3 — Monday=0 through Sunday=7. The last option is the one we need. Mon­day will be the first day, but it has got zero. It means that we will start count­ing from zero which is exact­ly what we need (Fig. 6)

=WEEKDAY([Date],3)

Creating a weekText column
Fig. 6 Cre­at­ing a week­Text column

After press­ing Enter, we have our new col­umn with only Mon­days. In all sev­en rows of the week we have only Mon­days. Now, let’s add the last day of the week. Let’s add a minus sign with spaces as a delim­iter. It allows us to delete the time from our col­umn. Then, let’s copy our WEEKDAY for­mu­la and paste it after the delim­iter. Then, we need to write +6 days to have Sun­day (Fig. 7)

First and last days of the week
Fig. 7 First and last days of the week

We can see the results. If the date for­mat is prop­er for us, this is all. But, if we want to change the date for­mat, we should add the FORMAT func­tion to the first and sec­ond cal­cu­la­tion (Fig. 8)

Adding the FORMAT function
Fig. 8 Adding the FORMAT function

How­ev­er, the cur­rent form is OK for me, so we can cre­ate a Piv­ot Table based on our mea­sures and cal­cu­la­tions. Let’s click on the Piv­ot Table com­mand in the Home tab (Fig. 9)

 Creating a pivot table
Fig. 9 Cre­at­ing a piv­ot table

Let’s select the New Work­sheet radio but­ton (Fig. 10)

Create PivotTable window
Fig. 10 Cre­ate Piv­ot­Table window

If I start with the Date col­umn and go to Rows, most new­er ver­sions will group data auto­mat­i­cal­ly by months. Let’s try to group it by days (Fig. 11)

Group option
Fig. 11 Group option

We can see that in the Pow­er Piv­ot the num­ber of days is grayed out and we can­not use it (Fig. 12)

Days grayed out
Fig. 12 Days grayed out

That’s why we should crate addi­tion­al columns to address this prob­lem. I should use the week­Num or the week­Text col­umn in our Rows area. Let’s also add Per­son to the Columns area and the Grand total by going to the Design tab and click­ing on the Grand Totals com­mand. Let also add our mea­sure, which is the fx pres­sure into Val­ues (Fig. 13)

Creating additional columns
Fig. 13 Cre­at­ing addi­tion­al columns

Now, we can see aver­age blood pres­sure for each per­son and each week. We also have the grand total for all peo­ple in a week. It’s time to add KPI to our piv­ot table. Let’s go to the Pow­er Piv­ot tab (1), then to the KPIs com­mand (2) and choose the New KPI option (3) (Fig. 14)

Creating KPI
Fig. 14 Cre­at­ing KPI

In the Key Per­for­mance Indi­ca­tor (KPI) win­dow, in the KPI base field val­ue, we have only pres­sure to choose from, so let’s leave it. In the Absolute Val­ue bar let’s write 120. In the Define Sta­tus Thresh­old graph­ics we should write our assump­tions, then select an icon style (Fig. 15)

Key Performance Indicator (KPI) window
Fig. 15 Key Per­for­mance Indi­ca­tor (KPI) window

Now, my mea­sures have changed into KPIs (Fig. 16)

KPIs
Fig. 16 KPIs

We still don’t see any icons. To switch them on, we need to uncheck the Sta­tus check­box and check it again (Fig. 17)

 Switching on icons
Fig. 17 Switch­ing on icons

Now, we can change the Pres­sure Sta­tus head­er name into KPI. We can also align the icons using the Cen­ter option in the Align­ment area (Fig. 18)

Center option
Fig. 18 Cen­ter option

We can see our aver­age week­ly mea­sure and KPIs cor­re­spond­ing to that mea­sure rep­re­sent­ed by icons. 

https://www.youtube.com/watch?v=lsyi8XEw2y0&t=3s

2D Lookup — INDEX and MATCH or XLOOKUP functions

How to do a 2D Lookup in Excel? Let’s start.

2D Lookup | Excel Tips 68

When we want to find an inter­sec­tion between a row and a col­umn bas­ing on head­ers, we can do it in two dif­fer­ent ways. The first one will be in Lega­cy Excel, and the sec­ond in Dynam­ic Array Excel.

The first solu­tion uses the MATCH func­tion as well as its close friend, the INDEX function. 

Let’s start with look­ing for the coun­try. In this case we want to find the row num­ber. Let’s write the cell, the range where we will be look­ing for and 0 for an exact match (Fig. 1)

=MATCH(B8,A3:A6,0)

MATCH function for countries
Fig. 1 MATCH func­tion for countries

We also want to find the col­umn num­ber. In this case we also use the MATCH func­tion. Let’s the cell, the range where we will be look­ing for and 0 for an exact match (Fig. 2)

=MATCH(B9,B2:G2,0)

MATCH function for months
Fig. 2 MATCH func­tion for months

When we have our row and col­umn num­bers, we can use the INDEX func­tion, select the whole dataset, then write the row and col­umn num­bers (Fig. 3)

=INDEX(B3:G6,D8,D9)

INDEX function
Fig. 3 INDEX function

Just like that, we did the 2D lookup, or we have found the val­ues we want­ed (Fig. 4)

Results
Fig. 4 Results

So far, we have had three for­mu­las. If we want to have only one, we need to imple­ment some mod­i­fi­ca­tions. We have to copy our MATCH func­tion and paste it in the place refer­ring to cell D8. Then, we have to copy the sec­ond MATCH func­tion with­out the equal sign, and paste it in the place of the ref­er­ence to cell D9. Now, we have one, big­ger for­mu­la instead of three small­er ones (Fig. 5)

=INDEX(B3:G6,MATCH(B8,A3:A6,0),MATCH(B9,B2:G2,0))

One, big formula
Fig. 5 One, big formula

Now, let’s focus on the solu­tion in the Array Excel. We will be using here the XLOOKUP func­tion twice. 

First, we are look­ing for a row in the coun­try head­ers. Then, as a return­ing array, we give Excel the whole dataset (Fig. 6)

=XLOOKUP(B8,A3:A6,B3:G6)

 XLOOKUP function
Fig. 6 XLOOKUP function

Since I’m using the XLOOKUP func­tion, and we are work­ing in the Array Excel, Excel will return the whole row. 

In such a case, we have to find a prop­er col­umn. We can also do it with the XLOOKUP func­tion. Let’s write the XLOOKUP func­tion once again. This time we will be look­ing for a month in the month head­ers. As a return array, we have the row we found pre­vi­ous­ly (Fig. 7)

=XLOOKUP(B9,B2:G2,XLOOKUP(B8,A3:A6,B3:G6))

Another XLOOKUP function
Fig. 7 Anoth­er XLOOKUP function 

And just like that, we have our results (Fig. 8)

Results
Fig. 8 Results

Even if we change the val­ues in our for­mu­la, the result is still cor­rect (Fig. 9)

Checking the formula
Fig. 9 Check­ing the formula

The results are cor­rect both in XLOOKUPs and INDEX with MATCH functions. 

https://www.youtube.com/watch?v=fZqiVB3Vffw

How to insert Emojis

Today, we will learn how to put emo­jis into Excel. We will have a look at three solutions. 

How to insert Emo­jis in Excel

The first one is just copy­ing emo­jis from the inter­net into Excel in the edit mode and past­ing it. If the emo­ji we past­ed is too large for a cell, we have to change the font into small­er (Fig. 67)

Emoji's size modification
Fig. 1 Emo­ji’s size modification

The sec­ond solu­tion involves insert­ing sym­bols by using the Sym­bol icon (1) and choos­ing the emo­ji you want (2). Then press the Insert but­ton (3) and that’s it (Fig. 2)

Inserting emojis from symbols
Fig. 2 Insert­ing emo­jis from symbols

The third solu­tion is using the Touch key­board (Fig. 3 and Fig. 4)

Touch keyboard button location
Fig. 3 Touch key­board but­ton location
Exact location
Fig. 4 Exact location

You have to press the Emo­ji key, (Fig. 5)

Emoji key
Fig. 5 Emo­ji key

…and choose emo­jis you want (Fig. 6)

Chosen emojis
Fig. 6 Cho­sen emojis

When we have our emo­jis in Excel, we can use them in for­mu­las. Some­times such a for­mu­la will look dif­fer­ent­ly than in a cell (Fig. 7)

A formula with emojis
Fig. 7 A for­mu­la with emojis

One last thing. In Excel online, emo­jis are more col­or­ful 🙂 (Fig. 8)

Colored emojis
Fig. 8 Col­ored emojis

https://www.youtube.com/watch?v=gja6eVWxnx4

How to Split a column into rows | Excel Power Query 02

Do you want to split cells into sep­a­rate rows and repeat val­ues from oth­er columns? I will show you how.

How to Split col­umn into rows | Excel Pow­er Query 02

In our exam­ple, we have names of pub­lish­ers and series. In short, we want to go from this table (Fig. 1):

to this table (Fig. 2):

The task is real­ly sim­ple when using Pow­er Query. We need to go to the Data tab and choose the From Table/Range com­mand (Fig. 3). 

It allows us to import our table to Pow­er Query. In our exam­ple, we have two columns from which we want to select the Series col­umn and split it into rows. When this col­umn is select­ed, we need to go to the Home tab and find the Split Col­umn com­mand, then choose the By Delim­iter option (Fig. 4). 

Pow­er Query will choose a space as the delim­iter for us. How­ev­er, in our case the delim­iter is a semi­colon and a space. It means that we need to select the Cus­tom option and write the semi­colon and a space in the prop­er bar (Fig. 5). 

Then, we should select the Each occur­rence of the delim­iter radio but­ton. Now, let’s open Advanced options. We can see that columns are select­ed as the default option. Let’s change it into rows. Now, we can press OK (Fig.6) .

And we have the result. Now, we can go to the Home tab, then to the Close and Load com­mand and choose the Close and Load to option. This way, we can load impor­tant data from Pow­er Query to Excel (Fig. 7). 

In Excel, we are choos­ing the Table radio but­ton, then the Exist­ing work­sheet and then we have to select the tar­get cell, which in our case is D1. Let’s close it with OK (Fig 8).

As we can see, we went from the table on the left to the table on the right (Fig. 9). 

https://www.youtube.com/watch?v=OjeedTaBReg

Combine all values within group with delimiter | Excel Power Query 03

Today, we want to com­bine all val­ues from the same group into one cell. Let’s go.

Com­bine all val­ues with­in group with delim­iter | Excel Pow­er Query 03

In our exam­ple, we want to com­bine all pub­lish­ers. It means that we’re doing an oper­a­tion reverse to the one in the pre­vi­ous post. This time, we want to go from this table (Fig. 1):

 Source table
Fig. 1 Source table

to this table (Fig. 2):

Target table
Fig. 2 Tar­get table

We can do it with Pow­er Query. First, select the table. Then, go to the Data tab and select the From Table/Range com­mand (Fig. 3).

 Going to Power Query
Fig. 3 Going to Pow­er Query

We can see that we have our two columns. The first thing we want to do is group our pub­lish­ers. Let’s select the Pub­lish­er head­er, then go to the Home tab and then Group By com­mand. In the new win­dow, we can see that we are group­ing by the Pub­lish­er col­umn. We still need a new aggre­ga­tion. Let’s change the Oper­a­tion bar into All Rows and write ‘Series’ in the New col­umn name bar. We can­not change any­thing in the Col­umn bar. Let’s press OK (Fig. 4).

Group By window
Fig. 4 Group By window

Now, we have the Pub­lish­ers group, and in the cells from the Series col­umn, we have all rows from the pre­vi­ous stage. The whole table is in one, sin­gle cell (Fig. 5).

Whole table in one cell
Fig. 5 Whole table in one cell

How­ev­er, we don’t need the whole table, which con­sists of two columns. We only need the Series col­umn. We can change it by mod­i­fy­ing the code. Let’s go the View tab, and let’s check whether the For­mu­la bar is ticked. If it is so, we can start mod­i­fy­ing the code in the for­mu­la bar (Fig. 6).

Going to the Formula bar
Fig. 6 Going to the For­mu­la bar

Look­ing at the code, we can see that we don’t want to choose under­score for each step. It means that we need only one col­umn. That’s why we must write ‘Series’ in the code (1). Now, let’s delete the type from the code (2) and write ‘type as list’. It’s impor­tant to write ‘list’ with a low­er­case (Fig. 7). And we see that we have only lists when we click on any of the Series cells. 

 Code modification
Fig. 7 Code modification

Now, as Pow­er Query treats val­ues as a list, we can extract them by using the Extract Val­ues option (Fig. 8).

Extracting values
Fig. 8 Extract­ing values

We are extract­ing the val­ues by com­bin­ing them with a delim­iter. We want to use a com­ma and a space, so let’s select the Cus­tom option first and then write what we want (Fig. 9). Let’s close it with OK.

Delimiter
Fig. 9 Delimiter

Now, we can see that we com­bined all Series names into one cell for each pub­lish­er. We can now go to the Home tab, then Close & Load com­mand, and press the Close & Load to option (Fig. 10).

Loading data to Excel
Fig. 10 Load­ing data to Excel

Let’s select the Table and the Exist­ing Work­sheet radio but­tons in the Import Data win­dow (Fig. 11)

Data importing
Fig. 11 Data importing

We can see that all val­ues with­in one group are com­bined into one cell (Fig. 12)

Grouped values
Fig. 12 Grouped values

https://www.youtube.com/watch?v=GFHsSJXeEaA&

Combine all unique values within a group | Excel Power Query 04

Let’s assume that we are in the future and we sell space­ships. We want to find out what class of a space­ship each coun­try has bought bas­ing on our table of unique space­ship classes. 

Com­bine all unique val­ues with­in group | Excel Pow­er Query 04

With Pow­er Query, this task is very sim­ple. We have to select our main table, then go to the Data tab and choose the From Table/Range com­mand in order to export our data from Excel to Pow­er Query (Fig. 1).


Fig. 1 Exporting data to Power Query
Fig. 1 Export­ing data to Pow­er Query

Since we are inter­est­ed which coun­try has bought which space­ship, we want to group our data by the coun­try. We have to select the Coun­try col­umn and go to the Home tab (1) and choose the Group By com­mand (2). In the win­dow, we need to choose the Advanced option (3) because we want to add more aggre­ga­tion. I want to count how many ships each coun­try has bought as well as know the space­ship class names. Since there isn’t any prop­er oper­a­tion, let’s choose the Sum option (4), which we will mod­i­fy lat­er in the code. In the col­umn bar, we’re choos­ing the Ship class (5). As a final step, let’s write a new name, which is going to be ‘Unique ship class­es’ (6) (Fig. 2)

Data grouping
Fig. 2 Data grouping 

In the new table, there are some errors in the last col­umn, because we want­ed to sum up text, which is impos­si­ble. It means that we need to mod­i­fy our code. We need to go to the View (1) tab and tick the For­mu­la bar check­box (2). We can see that the for­mu­la uses the List.Sum func­tion (3) (Fig. 3)

Formula bar
Fig. 3 For­mu­la bar

What we want to do is com­bine all val­ues, so let’s change the List.Sum into the Text.Combine func­tion (1). We also need to add a sep­a­ra­tor, which will be a com­ma and a space (2) (Fig. 4)

Code modification
Fig. 4 Code modification

Now, we can see that Pow­er Query has changed its cal­cu­la­tions. All ship class­es are com­bined. How­ev­er, as I said before, we need only unique val­ues with­out repeats. We just need to add one func­tion, which is the List.Distinct func­tion. (Fig. 5)

List.Distinct function
Fig. 5 List.Distinct function

Now, we can see there are no repeats. We can go to the Home tab (1) and to the Close & Load com­mand (2) and the Close & Load to option (3) (Fig. 6)

Going back to Excel
Fig. 6 Going back to Excel

In Excel, we have to remem­ber to select the Table (1) and Exist­ing work­sheet (2) radio but­tons. Then choose a tar­get cell (Fig. 7)

Data importing
Fig. 7 Data importing

As we can see, we have count­ed how many ships each coun­try has bought as well as the prod­uct class (Fig. 8)

 The final table
Fig. 8 The final table

https://www.youtube.com/watch?v=A0fWOeDUXNA

List of file names from a folder | Excel Power Query 05

Today, we want to find all file names from a folder.

List of file names from a fold­er | Excel Pow­er Query 05

Let’s see our fold­er. We have dif­fer­ent kinds of files and even a sub­fold­er. There is also an emp­ty fold­er called Emp­ty, which must stay emp­ty. Our task is to find all files con­nect­ed to Excel, which means that we will need to do some fil­ter­ing (Fig. 1)

Folder content
Fig. 1 Fold­er content

We know the path, so we can copy it, then go to Excel, and then use Pow­er Query, which is the sim­plest solu­tion I know. We need to go the Data tab (1), then to the Get Data com­mand (2), then to the From File (3) and From Folder (4) options (Fig. 2)

From Folder option
Fig. 2 From Fold­er option

In the new win­dow, we can find our fold­er, for exam­ple, by the nav­i­ga­tion bar, where we can paste the whole path and press Open (Fig. 3) 

Navigation bar
Fig. 3 Nav­i­ga­tion bar

We can see that Pow­er Query has pre­pared a whole batch of infor­ma­tion from the giv­en fold­er, as well as from the Sub­fold­er for us. We don’t see the Emp­ty fold­er, because there aren’t any files. In our sit­u­a­tion, it’s fine for us. Then, we need to click on the Trans­form Data but­ton (Fig. 4)

 Information prepared by Power Query
Fig. 4 Infor­ma­tion pre­pared by Pow­er Query

The Trans­form Data option gives us the chance to add some fil­ter­ing to get the data we are inter­est­ed in. In the win­dow that appeared, we can see that we can fil­ter the infor­ma­tion by the Fold­er Path (1). If we are inter­est­ed only in the main fold­er, we can check only the main fold­er (2) (Fig. 5)

Filtering by the Folder Path
Fig. 5 Fil­ter­ing by the Fold­er Path

How­ev­er, we want all fold­ers, togeth­er with the Sub­fold­er, so let’s close this fil­ter­ing and go to the Exten­sion fil­ter­ing. Since we are inter­est­ed in Excel files, we are look­ing for the ones with an .xls exten­sion. Remem­ber that Pow­er Query is case sen­si­tive, so if we have some sus­pi­cions that there may be some upper case let­ters, we have to trans­form our Exten­sion col­umn. We need to go to the Trans­form tab, then to the for­mat com­mand and the low­er­case option (Fig. 6)

Lowercase option
Fig. 6 Low­er­case option

Now, we can fil­ter this col­umn by Text Fil­ters and the Begins with option (Fig. 7)

Begins with option
Fig. 7 Begins with option

We want the text to begin with .xls, which should get all exten­sions con­nect­ed with Excel (Fig. 8)

.xls extension
Fig. 8 .xls extension

We can see that we have our cho­sen exten­sions as well as the file names also with exten­sions. This is the infor­ma­tion that we need­ed, so let’s right click on the Name bar, and select the Remove Oth­er Columns option (Fig. 9)

Remove Other Column option
Fig. 9 Remove Oth­er Col­umn option

We are left only with one col­umn, where we have file names with exten­sions. Some­times, we don’t need any exten­sions. In those cas­es, we can add one more step to Pow­er Query. We have to select the col­umn, then go to the Trans­form tab, then to the Extract com­mand and the Text Before Delim­iter option (Fig. 10)

Text Before Delimiter option
Fig. 10 Text Before Delim­iter option

Our delim­iter is just a dot, so let’s write it (Fig. 11)

Delimiter
Fig. 11 Delimiter 

Now, we have only file names with­out exten­sions. How­ev­er, let’s say that I still want those exten­sions. In such a case I need to delete this step (Fig. 12)

Deleting the last filtering
Fig. 12 Delet­ing the last filtering

Now, I go to the Home tab, click on the Close & Load com­mand, then the Close & Load to option (Fig. 13)

Going back to Excel
Fig. 13 Going back to Excel

Let’s choose the tar­get cell and select the Table radio but­ton (Fig. 14)

Data importing
Fig. 14 Data importing

Here’s the final result (Fig. 15)

 Final table
Fig. 15 Final table

https://www.youtube.com/watch?v=Dey4PzGj46A

Advanced Filters and between condition

Today, we want to learn how advanced fil­ters work in Excel, espe­cial­ly between conditions. 

Advanced Fil­ters and between condition

Let’s start. When we have our dataset, we write our advanced fil­ter con­di­tions in cells. We need to have a head­er and a con­di­tion for this head­er. If we write con­di­tions in one row, all of them are con­nect­ed with the final cri­te­ria. It means that each con­di­tion should be met in order to take out the whole row from our dataset (1). When we add con­di­tions to fur­ther rows, it meas that it’s an ‘or’ con­di­tion (2). In this case, we will look for straw­ber­ries or plums. If we want to cre­ate a between con­di­tion, we need to write the head­er two times (3) in order to cre­ate a com­mon part. In our case, we are look­ing for straw­ber­ries that are equal or greater than 500 and small­er or equal to 750, and in the case of plums we want the plums that are equal or greater than 300 and small­er or equal to 500. We have to remem­ber that those con­di­tions should make a com­mon part (Fig. 1)

Dataset with two headers
Fig. 1 Dataset with two headers

When we want to go to advanced fil­ters, we need to select one cell in our dataset (1), then go to the Data tab (2), then Advanced fil­ters (3). In the Advanced fil­ter win­dow press the Copy to anoth­er loca­tion radio but­ton (4), and select the cri­te­ria range (5). The last step is select­ing the tar­get cell, which will be cell E6 (6) (Fig. 2)

 Creating a table
Fig. 2 Cre­at­ing a table

Remem­ber that if con­di­tions are writ­ten in one row, they are com­bined as an ‘and’ con­di­tion, and when they are in sep­a­rate rows, they are com­bined as an ‘or’ con­di­tion. More­over, we can add an emp­ty con­di­tion for dif­fer­ent head­ers. But, since there isn’t any con­di­tion in the Date col­umn, we can select the range with­out it. In fig­ure 3, we can see the final table with sales of plums that are between 300 and 500 and sales of straw­ber­ries that are between 500 and 750, togeth­er with all pos­si­ble dates for those con­di­tions (Fig. 3)

 Final table
Fig. 3 Final table

https://www.youtube.com/watch?v=PihjS8Bq-vI&t

Advanced Filters and wildcards

Today, we want to learn how wild­cards work with advanced filters. 

Advanced Fil­ters and wildcards

First of all, we have to remem­ber that an aster­isk replaces any text string, even an emp­ty one. A ques­tion mark replaces any sin­gle char­ac­ter. A tilde dis­ables a wildcard. 

Let’s start with find­ing ‘Red’ in the Prod­uct col­umn. To do that, we have to select one cell in our data, then go to the Data tab (1) and click on the Advanced fil­ter com­mand (2). In the Advanced fil­ter win­dow, we have to select the Copy to anoth­er loca­tion radio but­ton (3), then write the Cri­te­ria range (4). In the Copy to bar, we select our tar­get cell (5).

Advanced filter window
Fig. 1 Advanced fil­ter window

After press­ing OK, we have our results. In advanced fil­ters, we don’t have a sim­ple con­di­tion with text. This con­di­tion is not an equal con­di­tion, but a ‘starts with’ con­di­tion. In our tar­get col­umn, we have the ‘red’ word, how­ev­er, advanced fil­ters chose whole cells that start with ‘red’. If we want only the exact word, we have to write it with a sin­gle quote, then equals, then our word. Let’s write it. We should make anoth­er advanced fil­ter, so let’s make the same steps as in the pre­vi­ous exam­ple, start­ing with the Data tab and chang­ing the Cri­te­ria range to anoth­er col­umn (1) (Fig. 2)

Advanced filters with an exact word
Fig. 2 Advanced fil­ters with an exact word

In the tar­get cell, we can see only one cell with Drag­on­Fly, even though there are three cells with Drag­on­Fly in our data. 

Now, let’s try the aster­isk option. We write an aster­isk before ‘bee­tle’, but we have to remem­ber that it is always con­nect­ed with the ‘starts with’ option. We are work­ing with wild­cards as well as with the ‘starts with’ cri­te­ria. It works as if an aster­isk was also at the end of ‘bee­tle’. Let’s make a prop­er advanced fil­ter for this case star­ing with the Data tab and chang­ing the Cri­te­ria range into anoth­er col­umn (1) (Fig. 3)

 Advanced filters with an asterisk
Fig. 3 Advanced fil­ters with an asterisk

As we can see, ‘bee­tle’ can be at the end, at the begin­ning or even in the mid­dle of our cell.

Now, let’s work with ques­tion marks. We need to remem­ber that one ques­tion mark rep­re­sents only one sign. It can be a dig­it, a let­ter or any oth­er sign. For exam­ple ‘Ant ? — ? mm’ can­not rep­re­sent ‘Ant 6 — 10 mm’, because there are too many signs in 10. Let’s make an advanced fil­ter for that. We start with the Data tab, and we change the Cri­te­ria range (1) and the tar­get cell (2) (Fig. 4)

Advanced filters with an asterisk
Fig. 4 Advanced fil­ters with an asterisk

We can see that we found two cells where a ques­tion mark rep­re­sent­ed only one sign. 

Now, let’s move on to a tilde. We want to find the exact phrase of ‘*Ant’. That’s why we put a tilde at the begin­ning. If we put only an aster­isk and an Ant, like this ‘*Ant’, Excel would find any Ant, regard­less of its posi­tion. The tilde makes the aster­isk stop being a wild­card. We do the same as in pre­vi­ous cas­es, chang­ing only the Cri­te­ria range and the tar­get cell (Fig. 5)

 Advanced filters with a tilde
Fig. 5 Advanced fil­ters with a tilde

We can see that Excel found only one Ant with an aster­isk at the begin­ning. It’s because we turned off wildcards. 

https://www.youtube.com/watch?v=oRH3-S9v-8Q

SORT by months using functions

Today, we want to learn about sort­ing by months with the SORT function. 

SORT by months using functions

Let’s start with writ­ing the SORT func­tion, with an array as the first argu­ment. In the sec­ond argu­ment we need to write 2, as we want to sort by months, which are locat­ed in the sec­ond col­umn. Now, we can close the func­tion (Fig. 1). 

=SORT(A2:C145,2)

SORT function
Fig. 1 SORT function

Just like that the SORT func­tion sort­ed data by the Month col­umn. It’s impor­tant that the SORT func­tion does­n’t con­sid­er the cus­tom list. Excel does it, but the SORT func­tion does­n’t. Now. let’s have a look at how we can prop­er­ly sort by months using the SORT func­tion. First of all, we can­not use the SORT func­tion, but the SORTBY func­tion. In this func­tion, even if we change the sec­ond argu­ment to a month col­umn, we still get an ascend­ing sort­ing, from A to Z. It means that the sort­ing is based on the alpha­bet, not on months of the year. The thing is we can­not do the sort­ing based on argu­ments. We need to use the MATCH func­tion. It will look up a giv­en month in a list of months. In the third argu­ment we write 0, as we want to have the exact match (Fig. 2)

=MATCH(B2,$J$2:$J$13,0)

 MATCH function
Fig. 2 MATCH function

The MATCH func­tion starts the sort­ing from the top on the Month col­umn. As we can see in col­umn D, we have a prop­er num­ber for each month. The col­umn acts as a helper col­umn, how­ev­er, some­times we don’t want any helper col­umn, so we can cre­ate a helper col­umn in our for­mu­la. We can match each month from the Month col­umn (col­umn B) using the MATCH func­tion, where we need to write the lookup val­ue in the first argu­ment, which is our data col­umn. In the sec­ond argu­ment, we need to write the whole list of months on the right, then let’s write 0 as the exact match (Fig. 3)

SORTBY(A2:C145,MATCH(B2:B145,J2:J13,0))

SORTBY function
Fig. 3 SORTBY function

It works. We see that the SORTBY func­tion found a prop­er num­bers for each month. It’s impor­tant that it sorts by months, not by years. How­ev­er, we can add the year as well. But, I want to show you some­thing else. First of all, if we don’t like the cus­tom helper col­umn list, we can just click F9 in the lookup array argu­ment to hard code the array list in our for­mu­la (Fig. 4)

=SORTBY(A2,C145,MATCH(B2:B145,{“January”;“February”;“March”;“April”;“May”;“June”;“July”;“August”;“September”;“October”;“November”;“December”},0))

Hard coding month names
Fig. 4 Hard cod­ing month names

We can even delete the cus­tom col­umn. As we can see, it works prop­er­ly. When we look at col­umn D, we can see #N/A error. It’s because the MATCH func­tion is try­ing to find months in the cus­tom col­umn cells which are emp­ty (Fig. 5)

=MATCH(B2,$J$2:$J$13,0)

Empty cells in the Month column
Fig. 5 Emp­ty cells in the Month column 

Now, let’s focus on dates based on years and months. Some­times, our date in a dataset isn’t writ­ten only in one col­umn, but it can be sep­a­rat­ed into the year, month and day columns. We can cre­ate a full date from the data we have. We will try it in the Helper col­umn. First of all, we write =, then 1 com­bined with a month, com­bined with a year (Fig. 6)

=1&B2&A2

Creating a date
Fig. 6 Cre­at­ing a date

And just like that, we com­bined the 1st of Jan­u­ary 2022. Our date, how­ev­er, is text. We want Excel to under­stand it as a date, so we just need to add paren­the­ses and a 0 (Fig. 7)

=(1&B2&A2)+0

Changing text into numbers
Fig. 7 Chang­ing text into numbers

Excel mag­ic has just hap­pened! It changed text into num­bers. Now, to change the num­bers into dates, we need to go to the Home tab (1), then change the for­mat­ting (2) into Short Date (3) (Fig. 8)

Numbers into a date
Fig. 8 Num­bers into a date

Since we have dates based on the year and the month columns, we can sort them. Let’s write the SORTBY func­tion. In the first argu­ment we write the data col­umn, and in the sec­ond col­umn we have to com­bine 1 with the Month col­umn, then with the Year col­umn. When we close the paren­the­ses we need to add 0 to change text val­ues into num­bers (Fig. 9)

=SORTBY(A2:C145,(1&B2:B145&A2:A145)+0)

SORTBY function
Fig. 9 SORTBY function

Now, we have only six Jan­u­ar­ies at the begin­ning, because we have have only six Jan­u­ar­ies in 2022. Next six Jan­u­ar­ies are in 2023. This way we sort­ed our data by months and years using a helper column.