⚠️ Caution: Always verify any downloaded sheet against a manual design or known reference mix. A formatting error in a single cell can corrupt the whole design.
This converts theoretical weights into batch weights per cubic yard (or meter). aci concrete mix design excel sheet
| Mistake | Consequence | Fix | |---------|-------------|-----| | Wrong specific gravity for aggregates | Under/over sand | Always use SSD specific gravity | | Ignoring absorption | Wet concrete bleeding | Use absorption in moisture correction | | Hardcoded values in formulas | Errors when aggregate changes | Use named ranges or lookup tables | | No air volume | Overestimation of strength | Always include 1.5–6% air per ACI | | Forgetting to convert kg to tons for plant batching | Off-spec concrete | Add a “batch ticket” output tab | ⚠️ Caution: Always verify any downloaded sheet against
ws.cell(row=row, column=1, value="1. Water Requirement (from ACI Table 6.3.3)").font = subheader_font ws.cell(row=row, column=2, value="lb/yd³") formula_water = 'IF(AND(B6<=0.75, B6>=0.5), IF(B8="Yes", 305, 335), IF(B6=1, IF(B8="Yes", 315, 345), IF(B6=1.5, IF(B8="Yes", 340, 365), "Check ACI Table")))' ws.cell(row=row, column=3, value="Formula").font = Font(italic=True) ws.cell(row=row, column=4, value=formula_water) row += 1 This converts theoretical weights into batch weights per
ws.cell(row=row, column=2, value="Water (Unadjusted)") ws.cell(row=row, column=3, value=formula_water) ws.cell(row=row, column=4, value="=D3") # placeholder actual value ws.cell(row=row, column=4).fill = result_fill row += 1