Skip to the page
Year 10 · ICT · Summer 1 · Spreadsheets

A full past-paper spreadsheet task

Exam practicePresent ▶

What this lesson covers

20.1c Lookup functions

Cambridge IGCSE ICT 0417 · Topic 20: Spreadsheets · Paper 3

20.1d Decisions with IF

Cambridge IGCSE ICT 0417 · Topic 20: Spreadsheets · Paper 3

20.3 Display, format and print

Cambridge IGCSE ICT 0417 · Topic 20: Spreadsheets · Paper 3

You will learn to

  • Complete a full past-paper spreadsheet task under timed conditions.
  • Give clear evidence: printouts or screenshots showing values and formulae.
  • Evaluate your work against the mark scheme, and record each lost mark and its cause.

Success criteria

  • I can finish the task in the time set, at about 2 minutes per mark.
  • I can mark my work with the mark scheme, point by point.
  • I can name my three most common lost marks and how to avoid them.
The syllabus points for these sections
  • Use VLOOKUP with an exact match and with an approximate match.
  • Use HLOOKUP on a table laid out across rows.
  • Use LOOKUP on sorted data and know its limits.
  • Use XLOOKUP, including a message when nothing is found.
  • Use IF to return one of two results.
  • Write a nested IF with three or more results, in a sensible order.
  • Recognise error values and fix the formula that caused them.
  • Switch between formulae view and values view, and make every cell fully visible.
  • Format cells: bold, italic, shading, borders, alignment, wrap text, hide and show.
  • Apply number formats and conditional formatting.
  • Set up the page to print formulae and values clearly.
  • Avoid the common ways spreadsheet marks are lost.

Key words

Say each word, then read what it means. Every one is in the glossary too.

Cell
One box in the grid, where a column and a row meet.
Cell reference
The address of a cell: column letter then row number, such as C3.
Range
A block of cells written first:last, such as C3:C8.
Formula
A calculation in a cell that starts with =.
Function
A ready-made formula with a name, such as SUM or VLOOKUP.
Argument
One input to a function, written inside its brackets and separated by commas.
Nested function
A function used inside another function, such as ROUND(AVERAGE(...),2).
Absolute reference
A reference like $I$7 that stays fixed when the formula is copied.
Named range
A name, such as TripCost, given to a cell or range and used in formulae.
Lookup
A function that finds a value in a table and returns a matching value.
Exact match
A lookup that only accepts the identical value (FALSE in VLOOKUP).
Conditional formatting
Formatting that changes automatically when a cell meets a rule.
Formulae view
A display mode that shows the formulae in cells instead of their results.

The explanation

Read it here, or open the study page below to go one step at a time with things to try.

Run it like the real exam

Paper 3 lasts 2 hours 15 minutes and has 70 marks. 135 ÷ 70 is about 2 minutes per mark.

Count the marks on the spreadsheet task. Set the timer from that: 30 marks means about 60 minutes.

  1. Copy the source files into a new folder. Work only on the copies.
  2. Read the whole task once before you start.
  3. Add your name, centre number and candidate number to the header or footer first.
  4. Do each step in order. Tick it on the paper when it is done.
  5. Save with the exact file names the task gives.
!Watch out

No internet and no help during the timed run. It must feel like the real exam.

Mark it against the scheme

The mark scheme lists one point for each mark. The examiner only sees your evidence, never your screen.

  • Give a mark only if the evidence shows it clearly.
  • A formula that is cut off in the printout gets no mark.
  • A typed number where a formula should be gets no mark.
  • Check every cell in the range, not only the first one.
★Remember

If it is not in the evidence, it did not happen.

The lost-marks log

Write down every lost mark. Patterns show up after two or three tasks.

StepMarks lostWhyFix next time
Formulae printout2Columns too narrow, formulae cut offWiden columns in formulae view before printing
VLOOKUP copied down1No $ on the lookup range, so copies brokeMake the lookup range absolute, or name it
Values printout1No name in the headerAdd the header before the first printout
?Why?

Why keep a log?

Most practical marks are lost the same way each time. A log turns a vague worry into a short checklist.

20.1c Lookup functions

VLOOKUP: exact match

VLOOKUP (vertical lookup) searches down the first column of a table for a value. Then it returns a value from the same row.

It has four arguments. The table shows each one.

Copied down column E, it finds the right meal price for every pupil.

ArgumentWhat it meansIn =VLOOKUP(D3,$H$3:$I$5,2,FALSE)
lookup_valuewhat to look forD3 (the code V)
table_arraythe table; its first column holds the codes$H$3:$I$5 (absolute, so it does not move)
col_index_numwhich column of the table to return, counting from 1 at the table's left edge2 (column I, Price €)
range_lookupFALSE = exact match only. TRUE = approximate matchFALSE
e.g.Example
E3: =VLOOKUP(D3,$H$3:$I$5,2,FALSE) Step 1: D3 holds V. Step 2: search down H3:H5 (M, P, V). V is in row 5. Step 3: move across to column 2 of the table, which is column I: 6.50. Result: 6.50. Copied to E4: D4 holds M → 7.50.
?Why?

Exact match (FALSE) is right for codes, names and IDs. A missing code gives #N/A. That warns you, instead of quietly giving a wrong price.

!Watch out

The column number counts from the left edge of the table, not from column A. Column I is column 2 of H3:I5, not column 9.

VLOOKUP: approximate match

With TRUE, or with the 4th argument left out, VLOOKUP does an approximate match. It finds the largest value that is less than or equal to the lookup value.

The first column must be sorted in ascending order (smallest first). If not, the result can be wrong with no error shown.

Use it for bands: ticket prices by age, grades by mark, discounts by quantity.

KL
2Age fromTicket €
300.00
464.00
5188.00
e.g.Example
Entry tickets for the Alcázar of Segovia by age (sample prices): =VLOOKUP(15,$K$3:$L$5,2,TRUE) 15 is not in K3:K5. The largest value that is 15 or less is 6 (row 4). Column 2 of row 4 → 4.00 =VLOOKUP(18,$K$3:$L$5,2,TRUE) → 18 is found exactly → 8.00 =VLOOKUP(4,$K$3:$L$5,2,TRUE) → the largest value that is 4 or less is 0 → 0.00
!Watch out

Leaving out the 4th argument means TRUE. For codes, always type FALSE. Otherwise a missing code can return a wrong row instead of #N/A.

HLOOKUP

HLOOKUP (horizontal lookup) is VLOOKUP turned on its side. It searches across the top row of a table, then goes down.

Argument 1, lookup_value: what to find (B4, the form 10B).

Argument 2, table_array: the table, with codes in its top row ($H$12:$J$13).

Argument 3, row_index_num: which row of the table to return, counting from 1 at the top (2). Argument 4, range_lookup: FALSE for an exact match.

HIJ
1210A10B10C
13Ms RuizMr LeeMs Ortega
e.g.Example
=HLOOKUP(B4,$H$12:$J$13,2,FALSE) Step 1: B4 holds 10B. Step 2: search across H12:J12 (10A, 10B, 10C). 10B is in column I. Step 3: go down to row 2 of the table, which is row 13: Mr Lee.
?Why?

Use HLOOKUP when the codes run across a row. Use VLOOKUP when they run down a column. Look at the table in the question before choosing.

LOOKUP

LOOKUP searches one column (or row) and returns the value in the same position from another column (or row).

Argument 1, lookup_value: what to find. Argument 2, lookup_vector: the single column to search. Argument 3, result_vector: the column of answers, the same size.

LOOKUP always does an approximate match. The lookup vector must be sorted in ascending order. With no exact match, it uses the largest value that is smaller.

e.g.Example
=LOOKUP(D4,$H$3:$H$5,$I$3:$I$5) D4 holds M. M is 1st in H3:H5 (M, P, V are in alphabetical order). The 1st value in I3:I5 is 7.50. Result: 7.50
!Watch out

LOOKUP has no exact-only mode. A missing code X returns the price for V (the largest code before X) instead of an error. Use it only on sorted data, and only when the question asks for it.

XLOOKUP

XLOOKUP is the newest lookup. It searches one column (or row) and returns from another. Unlike LOOKUP, it does an exact match by default.

Argument 1, lookup_value. Argument 2, lookup_array: where to search. Argument 3, return_array: where the answers are.

Argument 4, if_not_found, is optional: what to show when there is no match. Optional arguments 5 and 6 set the match mode and the search direction.

The answer column can be to the left of the search column. VLOOKUP cannot do that.

e.g.Example
=XLOOKUP(D8,$H$3:$H$5,$I$3:$I$5,"No meal") D8 holds P → 2nd in H3:H5 → 2nd in I3:I5 → 6.00 If D8 held X → no match → shows No meal Looking left: =XLOOKUP(46.5,F3:F8,A3:A8) → 46.50 is in F6 → A6 → David
!Watch out

XLOOKUP is only in recent spreadsheet software. Older software shows #NAME?. Check before the exam which functions your software has.

20.1d Decisions with IF

IF

IF makes a decision. It checks a condition and returns one of two results.

Argument 1, logical_test: a comparison that is TRUE or FALSE, like F3=0. Argument 2, value_if_true. Argument 3, value_if_false.

Text results go in double quotes. Numbers and cell references do not.

e.g.Example
=IF(F3=0,"Paid","Owes") F3 is 0.00 → test TRUE → Paid Copied to row 4: F4 is 17.50 → test FALSE → Owes A number result: =IF(C4>=45,0,5) → 30.00 is not 45 or more → 5 (a €5 reminder fee) The sample sheet uses a nested version of this IF. It is in the next step.
!Watch out

=IF(F3=0,Paid,Owes) without quotes gives #NAME?. The spreadsheet thinks Paid is the name of a range.

Nested IF and other nested functions

A nested IF puts a second IF inside the first, usually in the value_if_false part. Two IFs give three possible results.

The spreadsheet checks the tests from left to right and stops at the first TRUE one. So the order of the tests matters.

Every IF opens a bracket. Two IFs need two closing brackets at the end.

Any function can be nested. The inner one is worked out first and its result is passed to the outer one.

e.g.Example
G3: =IF(F3=0,"Paid",IF(F3<=10,"Nearly","Chase")) F3 = 0.00 → first test TRUE → Paid F7 = 2.50 → first test FALSE, second test 2.50 <= 10 TRUE → Nearly F4 = 17.50 → both tests FALSE → Chase Other nesting: =ROUND(AVERAGE(C3:C8),1) → AVERAGE gives 31.8333…, then ROUND gives 31.8
!Watch out

Test order matters. =IF(F3<=10,"Nearly",IF(F3=0,"Paid","Chase")) never shows Paid, because 0 is already 10 or less.

Error values and what they mean

An error value means the formula cannot give an answer. Each one points to a different problem.

In a printout, an error loses the mark for that formula, and often for cells that use it.

ErrorWhat it meansHow to fix it
`#N/A`a lookup value was not foundcheck spelling, extra spaces, FALSE, and $ on the table
`#NAME?`the spreadsheet does not recognise a wordcheck the function spelling, quotes round text, and named ranges
`#DIV/0!`dividing by zero or by an empty cellcheck the cell you divide by
`#VALUE!`wrong type of data, such as =C3+A3 (a number plus a name)use cells that hold numbers
`#REF!`a reference points to a deleted cellrewrite the formula
`####`the column is too narrow to show the numberwiden the column
20.3 Display, format and print

Show formulae, not only values

Normally cells show values: the results. Formulae view shows what is typed in each cell.

Most spreadsheets have a show formulas option, often on the formulas tab or in the view settings.

In formulae view, widen columns until every formula is fully visible. A cut-off formula cannot be marked.

Adjust row heights and column widths, and wrap text in long headings, so nothing is hidden. Hide or show rows and columns only when the task says.

E3   =VLOOKUP(D3,$H$3:$I$5,2,FALSE)
E4   =VLOOKUP(D4,$H$3:$I$5,2,FALSE)
...  (same pattern down to E8)
F3   =$I$7+E3-C3
F4   =$I$7+E4-C4
...  (same pattern down to F8)
G3   =IF(F3=0,"Paid",IF(F3<=10,"Nearly","Chase"))
...  (same pattern down to G8)
C9   =SUM(C3:C8)
E9   =SUM(E3:E8)
F9   =SUM(F3:F8)
C10  =AVERAGE(C3:C8)
?Why?

In formulae view numbers lose their formatting, so 46.50 shows as 46.5. That is normal. The examiner wants to see the formulae, not the formatting.

Format cells: text, shading, borders, alignment

Typical tasks: make headings bold or italic, add shading (a fill colour), add borders, and set alignment.

Align text to the left and numbers to the right, so the decimal points line up.

Merge and centre a title across the top of the data, for example A1:G1.

Apply exactly what is asked, to exactly the cells named.

?Why?

Consistent formatting is a house style (topic 14). Examiners check that every cell in the stated range has the format, not only the first one.

Number formats

A number format changes how a value looks. It does not change the value.

Decimal places: 31.8333 shown to 2 decimal places is 31.83. Currency adds a symbol: €31.83, or 31,83 € in Spanish style.

Percentage: the value is shown multiplied by 100, with a % sign. 0.25 shows as 25%.

Use the symbol asked for: euro (€), pound (£) or dollar ($). The $ in a currency format has nothing to do with the $ in an absolute reference.

e.g.Example
Share of the cost Bruno has paid: =C4/($I$7+E4) → 30.00 ÷ (40.00 + 7.50) = 30.00 ÷ 47.50 = 0.6315… Percentage format, 0 decimal places → 63% Percentage format, 1 decimal place → 63.2%
!Watch out

Do not multiply by 100 and also apply the percentage format. You would get 6315.8%. The format does the × 100 for you.

Conditional formatting

Conditional formatting changes a cell's format automatically when its value meets a rule.

Select the range, choose the rule (for example "greater than"), type the value, then pick the format.

Because it is a rule, the format updates when the data changes. Colour added by hand does not.

e.g.Example
Rule 1: F3:F8, cell value greater than 20 → red fill. David (46.50) and Félix (22.50) turn red. Rule 2: G3:G8, cell value equal to Paid → green text. Ana and Carmen turn green. If Félix pays €5 more, F8 becomes 17.50 and the red disappears by itself.
!Watch out

Apply the rule to the whole range asked (F3:F8), not to one cell. "Greater than 20" does not include 20. Use "greater than or equal to" if 20 should count.

Page layout for printing

Set the orientation: portrait (tall) or landscape (wide). Formulae printouts are wide, so landscape usually fits better.

Use fit to page to scale the printout to 1 page wide, or to the number of pages the task says. Set a print area if only part of the sheet must print.

For formulae printouts, switch on gridlines and row and column headings. Then the examiner can see which cell holds each formula.

Add a header or footer with your name, centre number and candidate number. Check the print preview before you print.

?Why?

A formula like =$I$7+E3-C3 means nothing on its own. With headings, the examiner sees it sits in F3 and can check what I7 holds.

!Watch out

"Fit to 1 page wide" is not "fit to 1 page". Squeezing a long sheet onto one page can make the text too small to read.

How spreadsheet marks are lost

Most lost marks come from the evidence, not from wrong thinking.

Before each printout, ask: is everything visible, is it on the right number of pages, and is my name on it?

MistakeHow to avoid it
Formula cut off in the printoutwiden columns in formulae view
No row and column headings on a formulae printoutswitch them on in page setup
Typed number instead of a formula or cell referencealways point to the cell that holds the value
Missing $, so copied formulae breakcheck the last cell you copied into
Wrong range (includes a heading or total)click the formula and check the coloured outline
Sorting one column on its ownselect the whole list before sorting
Named range spelt differently from the questioncopy the name exactly
No name, centre number or candidate numberheader or footer on every printout

Study it

Open the study page and go one step at a time.

Check yourself

One question at a time. The reason shows after each answer.

Saved on this device.