English
Cleaning and calculating

Match — the cross-table lookup

Updated 2026-09-04 · 2 min read · For desktop macOS 0.0.9 / Windows 0.0.7

Pull columns from another table on a shared key. The panel's steps, what it does when several rows match, the xlookup and sumif it writes, and why it beats VLOOKUP on all four counts.


The situation

The parts list needs each part's running balance, but the quantities live in the stock movements table. The customer table needs a "last order date" column, but the orders are somewhere else. What these share: two tables have a column with the same content — part number, customer name — and you want to bring things across on it.

The panel, step by step

Match in the toolbar:

The Match panel: pick the lookup table, the shared columns, and the columns to copy across
The Match panel: pick the lookup table, the shared columns, and the columns to copy across

  1. Cross-table lookup — on the left, the lookup table you are taking data from (or upload a file); on the right, the result table the columns land in, defaulting to the current table.
  2. Pick the column the two tables share — the lookup table's key on the left, the result table's key on the right, = between them. Add condition adds another pair, for "same part number and same warehouse".
  3. Pick the columns to copy across — tick the ones you want, or All columns. Each has a dropdown deciding what to do when several rows match:
    • Latest — take the newest matching row's value (the default)
    • Sum / Count and the rest — aggregate every matching row, which is what the card's "cross-table Sumif / Countif" means
  4. Preview the result on the right.
  5. Run — the result table gains formula columns.

The formula it writes

For a single value, xlookup:

xlookup(AB2, AA3, AA6)
   In table AB: take this row's AB2, find it in AA's AA3, return that row's AA6

For an aggregate, sumif / countif:

sumif(AA6, AB2 = AA3)

Both show in the formula bar and can be edited.

Against VLOOKUP

VLOOKUP Match here
The key has to be the leftmost column of the lookup range Any column
Values come by column index, so inserting a column shifts everything Values come by column code; moving or renaming changes nothing
Returns the first match only Latest, or sum / count / max / min over every match
The formula has to be dragged down It lives on the column; new rows calculate themselves
Missing key shows #N/A Missing key leaves the cell empty

When nothing matches

  • The keys look identical but are not: one side has spacing, full-width characters or different capitalisation. Add upper(trim(AA3)) on the lookup table and use that column as the key.
  • One side is a number and the other is text: 0012 versus 12. Make the field types agree.
  • Date keys: 2026-09-03 on one side and 2026/9/3 on the other. Normalise with dateformat first.

Ask AI at the top of the panel can suggest which columns the two tables have in common.

Did this page not answer your question? Browse the help centre, or write to support@tabledi.com — the inbox is read by the people who build TableDI.