According to How can columns be set to 'autosize' in Excel documents created with NPOI? I did so:
foreach (DataColumn column in dataTable.Columns) {
Just to add an extra bit to the answer by YellowFog. I found that I had to add all data to the sheet, then iterate through the columns, setting AutoSizeColumn(idx) for this to work correctly.