Относительно ответа tuncalik , который великолепен, особенно если вы хотите немного поиграть с кодом :), но он помещает мои даты в Excel в американском формате, то есть 2 марта 2014 года в Великобритания - 02/03/2014, но в США - 03.02.2014 с 1-м месяцем, затем днем недели после. Мне нужно иметь его в британском формате, есть идеи, пожалуйста?
Я проверил, что он хранится в британском формате в моей DataTable, а также в моем Excel установлено значение UK, но по какой-то причине, когда он создает документ Excel, он считает, что его США (это потому, что Microsoft - компания из США:)
Я попытаюсь поэкспериментировать с кодами культуры, но пока не уверен, куда это поставить. Пробовал, но это не имело никакого эффекта.
приписка
Мне пришлось изменить одну строку, чтобы заставить ее работать, добавив «приведение», как показано ниже
// single worksheet
Excel._Worksheet workSheet = (Excel._Worksheet)excelApp.ActiveSheet;
Обновление: я достиг форматирования дат в Великобритании, переведя в формат LongDateTime, хотя это только обходной путь.
DateTime startDate = Convert.ToDateTime(myList[0].ToString());
string strStartDate = startDate.ToLongDateString();
DateTime endDate = Convert.ToDateTime(myList[myListTotalRows].ToString());
string strEndDate = endDate.ToLongDateString();
веселит.