Я прошу прощения за скучный вопрос, но я ищу правильный способ правильно отформатировать ячейки в формате времени, чтобы Excel распознал его. Есть много ответов на вопросы, как здесь, так и на других сайтах, которые получают основную информацию, но ни один из них не полностью отвечает на мой вопрос.
Выпуск:
Я использую c # для записи данных о времени в электронную таблицу. То, что я могу получить - это форматирование по времени в ячейке, но я хочу, чтобы Excel отображало правильное форматирование, и я хочу, чтобы это форматирование обрабатывалось программно.
Обратите внимание фактическое форматирование на ленте Excel, которое отражено на рисунке ниже - я хочу, чтобы "пользовательский" отображал правильный формат "Время":
* +1012 *
Ниже приведен фрагмент из цикла for, который я пытаюсь построить для форматирования даты. Я проверил это, и оно работает:
targetsheet.Cells[RowsUsed + 1, i].NumberFormatLocal = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
DateTime dt = Convert.ToDateTime(data_towrite[i - 1]);
Double db = dt.ToOADate();
targetsheet.Cells[RowsUsed + 1, i] = db;
Что дает мне это:
Я пытаюсь скопировать этот код для работы с ячейками типа времени, но мне не везет:
targetsheet.Cells[RowsUsed + 1, i].NumberFormatLocal = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern;
DateTime tt = Convert.ToDateTime(data_towrite[i - 1]);
Double db = tt.ToOADate();
targetsheet.Cells[RowsUsed + 1, i] = db;
Я совершенно уверен, что проблема связана с первой строкой, которая форматирует ячейку, но я не знаю, как заставить это работать.
Я пробовал другие предложения, как пример ниже:
targetsheet.Cells[RowsUsed + 1, i].NumberFormatLocal = "hh:mm:ss"
но это дает мне "пользовательский формат", который мне не нужен.
Я знаю, что я мог бы просто оставить форматирование как пользовательское или просто открыть электронную таблицу и щелкнуть по кнопке, чтобы изменить ее, но основная причина вопроса заключается в том, чтобы узнать, как правильно делать такие вещи (если даже есть способ).
Если бы кто-то мог сказать мне, что я делаю неправильно, или указать мне направление чтения, которое решает эту простую, но раздражающую проблему, я был бы очень признателен.
Спасибо