In Excel: give FORECAST.LINEAR only the two bracketing points — =FORECAST.LINEAR(x,{y1;y2},{x1;x2}) — and it returns the straight-line value between them.
Sort the table by the x column ascending; everything below depends on that order.
Locate the row below the target with =MATCH(E2,$A$2:$A$13,1), which returns the position of the largest x not greater than the target.
Use INDEX with that position and the one after it to build the two-point ranges for FORECAST.LINEAR.
Or compute it arithmetically: y1 + (x - x1) * (y2 - y1) / (x2 - x1), which makes each term visible on the sheet.
Guard the edges with IF so a target outside the table returns a message rather than a silent extrapolation.
What this does
Interpolation estimates a value at an input that lies between two measurements, on the assumption that the relationship is straight between them. Passing FORECAST.LINEAR the whole table instead of the bracketing pair does something quite different: it fits a least-squares line through every point and returns a value from that fit, which is a regression estimate rather than an interpolation. Keep the inputs visible and clearly labelled and the whole thing stays auditable — anyone who opens the file later, including you, can see at a glance exactly what feeds the result and change one assumption without hunting through the formula. For “excel interpolate table”, the reliable version is a short checking loop, not just the first command that appears to work. Run it on a deliberately small range first, watch how the affected cells change, and only then apply the same setup to the full sheet. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. That is what makes a layout choice that keeps the sheet readable and sortable useful in real work: repeatable, auditable, and not dependent on memory or luck.
A worked example
Viscosity is 4.2 at 20 °C and 3.1 at 30 °C. At 24 °C the interpolated value is 4.2 + (24-20) × (3.1-4.2) / (30-20) = 3.76, and =FORECAST.LINEAR(24,{4.2;3.1},{20;30}) returns the same 3.76. Handing the function all twelve rows of the table would return 3.68 — a different number answering a different question. Rate tables, calibration curves and price breaks are all published at intervals, and reading the nearest row instead of interpolating is a rounding error nobody documents. A practical tip before you scale it up: build it once on a small block of test data, confirm the number against the tool on this page, and only then point it at your real sheet. That one habit catches almost every mistake while it is still cheap to fix, long before a wrong figure reaches a report or a colleague.
In Google Sheets
Google Sheets handles this almost identically to Excel. The formula syntax above is the same, and the menu lives under a slightly different label rather than a ribbon tab. Use the platform toggle at the top of the page to switch every keyboard shortcut between Windows and Mac, and expect at most cosmetic differences in naming. Nothing on this page is behind a login: the tool runs entirely in your browser, the formula is shown in full with one-click copy, and the steps work the same on Windows and Mac. That is the whole promise here — the exact answer, a way to prove it on your own numbers, and just enough context to make it stick. If you take one thing from this page on “excel interpolate table”, make it the habit rather than the keystrokes: set the problem up with labelled inputs, reference those cells, and let Excel do the recomputing. Bookmark the page for the syntax, but do the example once in a blank sheet and check it against the tool above — five minutes of hands-on practice fixes the method in memory far better than re-reading, and it surfaces the small snags while they are still harmless. After that the technique is genuinely yours: faster than searching for it again, and reliable enough to drop into work that other people depend on.
Common mistakes
- Passing the entire dataset to FORECAST.LINEAR and calling the result an interpolation.
- Leaving the x column unsorted, which makes
MATCHwith match type 1 return the wrong bracketing row without any error. - Extrapolating past the ends of the table, where a straight-line assumption has nothing supporting it.
- Interpolating a curved relationship over a wide gap — fit a curve, or interpolate between closer points.
Frequently asked questions
Is FORECAST.LINEAR the same as TREND?
For a single new x they return the same value. TREND accepts an array of new x values and returns an array of results.
How do I find the two rows to interpolate between?
MATCH with match type 1 on a sorted x column gives the row below; the row after it is the upper bracket.
What about non-linear data?
Add a trendline, tick Display Equation on chart, and evaluate that equation — or interpolate between points close enough together for a line to be reasonable.
Can I interpolate a date?
Yes. Dates are numbers, so a date x column works directly, as long as the cells are real dates rather than text.