Excel Bilinear and spline based 2D-interpolation functions
Interpolation within a 2-dimensional table is hard to do with regular Excel formulas, but easy with a user defined function (VBA) or LAMBDA equivalent (defined in Excel's Name Manager, executes faster than VBA). This page presents:- Bilineair interpolation functions InterpolateXY (VBA) and L_InterpolateXY (LAMBDA).
- Three spline based 2D-interpolation functions: cardinal spline, cubic spline, and monotone cubic spline (VBA). A spline is a curve that goes through all data points. If you are certain the underlying function is convex (or concave), spline-based interpolation will generally outperform linear interpolation, which will systematically overestimate (or underestimate) values between two consecutive data points.
- InterpolateXY_CardinalSpline - has parameter tension with a value between 0.0 and 1.0 (default 0.5). If set to 0.0, it 'becomes' bilinear interpolation.
- InterpolateXY_CubicSpline - a.k.a. bicubic interpolation
- InterpolateXY_MonotoneCubicSpline - does not 'wobble' as advantage, for more info, see wikipedia.
If you want to reverse-interpolate within a 2-dimensional table, see Reverse bilinear interpolation.
If you want to interpolate within a 1-dimensional table, see Linear interpolation and Spline based interpolation.
