private static void BuildWorksheet(ComObjectManager com, NominationList nominationList, Worksheet worksheet) { var cells = com.Get(() => worksheet.Cells); cells.NumberFormat = "@"; // Format all cells as text. SetCellValue(cells, 1, 1, @"Quarter"); SetCellValue(cells, 1, 2, @"Name"); SetCellValue(cells, 1, 3, @"Office"); SetCellValue(cells, 1, 4, @"Values"); SetCellValue(cells, 1, 5, @"WriteUps"); var rowNumber = 2; foreach (var awardWinner in nominationList.StarValuesAwardWinners) { var companyValues = string.Join("; ", nominationList.GetCompanyValuesForAwardWinner(awardWinner).Select(cv => cv.ToString())); var writeUps = CompileWriteUps(nominationList.GetNominationWriteUpsForAwardWinner(awardWinner)); SetCellValue(cells, rowNumber, 1, nominationList.AwardsPeriod.Quarter.Abbreviation); SetCellValue(cells, rowNumber, 2, awardWinner.Name.FullName); SetCellValue(cells, rowNumber, 3, awardWinner.OfficeLocation.Name); SetCellValue(cells, rowNumber, 4, companyValues); SetCellValue(cells, rowNumber, 5, writeUps); ++rowNumber; } }