Это первый раз, когда я работаю с Interop.Excel и пытаюсь создать лист Excel и заполнить его данными из моих данных в коде.В настоящее время я просто пытаюсь получить основы для работы.Используя приведенный ниже код, я могу создать новую книгу Excel и рабочий лист.Я также могу изменить имя листа, так что я знаю, что связь есть, но я не могу добавить данные в какие-либо ячейки.
Я пытался добавить содержимое с помощью Excel.Range, но не могу получитьэто тоже работает.
Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
if (xlApp == null)
{
return;
}
Workbook workbook;
Worksheet worksheet;
Range range;
object misValue = Missing.Value;
workbook = xlApp.Workbooks.Add(misValue);
var worksheets = workbook.Worksheets;
worksheet = (Worksheet)workbook.Worksheets.get_Item(1);
worksheet.Name = "Roster Report";
// This is the section that is not working
worksheet.Cells[1, 1] = "ID";
worksheet.Cells[1, 2] = "Name";
worksheet.Cells[2, 1] = "1";
worksheet.Cells[2, 2] = "One";
worksheet.Cells[3, 1] = "2";
worksheet.Cells[3, 2] = "Two";
DateTime csvTime = DateTime.Now;
string date = csvTime.ToString("MM-dd-yyyy");
workbook.SaveAs("RosterReport." + date + ".xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
workbook.Close(true, misValue, misValue);
xlApp.Quit();
Marshal.ReleaseComObject(worksheet);
Marshal.ReleaseComObject(workbook);
Marshal.ReleaseComObject(xlApp);
Исходя из моего понимания, я ожидал бы, что этот код заполнит верхнюю строку на листе Excel с заголовками столбцов 'ID' и 'Name' вместе с данными в строкахниже, но ничего из этого не работает.