Build one .xlsx from the sample data that shows the Excel a junior data analyst uses every day. Follow the steps in order — you don't need any Excel experience. ~1–2 hours. The finished file goes in your GitHub repo as a portfolio piece.
=. Type it in a cell, then press Enter.B2 = column B, row 2. Row 1 is your headers; data starts in row 2.A DealID · B Agent · C City · D Stage · E Value · F Probability · G CreatedDate · H CloseDate · I LastActivityDate · J ActivityCountdeals.csv to open it in Excel.Whetstone_Excel_Skills.xlsx.a .csv can't store formulas, pivots, or formatting — you must save as .xlsx first.agents.csv, press Ctrl+A then Ctrl+C to copy everything, click cell A1 on the Agents sheet, and press Ctrl+V.G column header to select the whole column, then hold Ctrl and click the H and I headers too. Press Ctrl+1, choose Date, pick a format, click OK.Each one is a new column at the right end. Put the header in row 1, the formula in row 2, then fill it down.
K. In K1 type Agent (clean). In K2 type =TRIM(PROPER(B2)), press Enter, then fill down.the Agent column (B) is messy — random spaces and capitalization. TRIM strips extra spaces, PROPER fixes the capitalization. Now the names exactly match the Agents table, which the lookup in step 3 needs.L. In L1 type Weighted $. In L2 type =E2*F2, fill down. Then select L2 to the bottom and click the $ (Currency) button on the Home tab.Value × Probability = the realistic, risk-adjusted dollar amount of each deal. Analysts weight pipelines this way instead of trusting the full sticker value.M. In M1 type Team. In M2 type =XLOOKUP(K2, Agents!A:A, Agents!B:B, "—"), fill down.XLOOKUP takes the clean agent name (K2), finds it in the Agents sheet's column A, and returns that agent's team from column B. The "—" is what shows if no match is found.N. In N1 type Priority. In N2 type =IFS(F2>=0.7,"High", F2>=0.4,"Medium", TRUE,"Low"), fill down.IFS checks conditions in order: 70%+ → High, else 40%+ → Medium, else Low. The final TRUE is the catch-all "otherwise."A1 type Stage, in B1 type Weighted Pipeline. In A2 down to A8, type the 7 stages: Lead, Qualified, Showing, Offer, Under Contract, Closed Won, Closed Lost. In B2 type =SUMIFS(Deals!L:L, Deals!D:D, A2), press Enter, fill down to B8, then format B2:B8 as Currency.reads as: "add up column L (Weighted $) on the Deals sheet, but only rows where column D (Stage) equals the stage in A2."D1 type Agent, E1 type Deals. In D2:D7 type the 6 agent names (copy them from the Agents sheet). In E2 type =COUNTIFS(Deals!K:K, D2), fill down.F1 type Avg Value. In F2 type =AVERAGEIFS(Deals!E:E, Deals!K:K, D2), fill down, format Currency.F2, press Ctrl+Shift+↓ to select the column. Home → Conditional Formatting → Color Scales → pick the green-white-red one.E2 to the bottom the same way. Conditional Formatting → Data Bars → pick a fill.A2 across and down to the last row (through column N). Conditional Formatting → New Rule → "Use a formula to determine which cells to format." In the box type =(TODAY()-$I2)>30. Click Format → Fill, pick red, OK, OK.TODAY() is the current date; column I is LastActivityDate. The $I locks it to that column while the row number moves down each row, so every row is tested against its own date.A1:B8 (Stage + Weighted Pipeline). Click Insert → 2-D Column chart..xlsx to your github.com/benwhetstone/data repo, in an excel/ folder. The repo README already lists it as a portfolio artifact.