Using an Excel-based approach for duct design offers several advantages over the standalone app:

@xw.func @xw.arg('fit_id', numbers=int) @xw.arg('p1', numbers=float) def ashrae_co(fit_id, p1, p2=0.0, p3=0.0): co = c_double() ret = dll.GetFittingData(fit_id, p1, p2, p3, ctypes.byref(co)) return co.value if ret == 0 else None

Ashrae Duct Fitting Database Excel Link Jun 2026

Using an Excel-based approach for duct design offers several advantages over the standalone app:

@xw.func @xw.arg('fit_id', numbers=int) @xw.arg('p1', numbers=float) def ashrae_co(fit_id, p1, p2=0.0, p3=0.0): co = c_double() ret = dll.GetFittingData(fit_id, p1, p2, p3, ctypes.byref(co)) return co.value if ret == 0 else None