Я пытаюсь прочитать все данные excel в виде массива текста (тот же текст, что и в ячейке).Прочитать диапазон Excel как массив текста (строка, представляющая то, что отображается на экране для ячейки)
Я использую этот код, чтобы преобразовать содержимое первенствовать в массив
Microsoft.Office.Interop.Excel.Range range = excelSheet.get_Range("A1", "P" + excelRowCount); object[,] values = (object[,])(range.Text);
, но я получаю сообщение об ошибке, как не может преобразовать DBNull объекта [,]
код будет работать, если я заменю range.Text
с range.Value
или range.Value2
Но это не даст правильных данных, например, если данные в ячейке равно 23:00:00 PM, range.Value
дает 0.95833333333333337 здесь Мне нужно использовать DateTime.FromOADate()
метод для преобразования значения 0.95833333333333337 в 11:00:00 PM
Но если я пойду с excelSheet.Cells[rowNo, columnNo].Text
я получить правильный текст, то есть: 11: 00: 00, но это будет замедление процесса, потому что есть 40K записи в листе excel.
Есть ли способ получить точный текст в массиве, например object[,] values = (object[,])(range.Value);
, почему range.Text
не работает?