Мне просто нужно подтверждение/краткая информация. Я чувствую, что это очевидный вопрос, но просто хочу убедиться и полностью понять, что происходит. Не удалось найти много деталей в Интернете.Руководство в Excel Использование SpreadSheetGear
Я использую SpreadSheetGear, чтобы сбрасывать данные в электронных таблицах из datatable. В этих таблицах есть несколько указаний. Теперь, когда я пытаюсь скопировать из моей таблицы данных, я получаю сообщение об ошибке неправильного типа данных, если только я не импортирую с использованием флагов AllText или удаляя столбцы, содержащие Guids, в моем datable.
Кажется, что excel не поддерживает гиды как переменные/тип данных. Это нормально? Я не обязательно нуждаюсь в данных, так или иначе, может легко конвертироваться в текстовом формате, но я просто хочу полностью понять эту проблему.
Вот пример кода со следующей ошибкой: Недопустимый тип значения ячейки.
public void Test()
{
DataTable table = new DataTable();
table.Columns.Add("ID", typeof(Guid));
table.Columns.Add("Drug", typeof(string));
table.Columns.Add("Patient", typeof(string));
table.Columns.Add("Date", typeof(DateTime));
table.Rows.Add(Guid.NewGuid(), "Indocin", "David", DateTime.Now);
table.Rows.Add(Guid.NewGuid(), "Enebrel", "Sam", DateTime.Now);
table.Rows.Add(Guid.NewGuid(), "Hydralazine", "Christoff", DateTime.Now);
IWorkbook wrk = Factory.GetWorkbook();
IWorksheet wsht = wrk.Worksheets["Sheet1"];
IRange rng = wsht.Cells["A1"];
rng.CopyFromDataTable(table, SpreadsheetGear.Data.SetDataFlags.None);
wrk.SaveAs("C:\\MyData.xls",FileFormat.OpenXMLWorkbook);
wrk.Close();
}
С уважением, у Тима не было рефлекса, чтобы посмотреть в свойство IRange.Value, но это имеет смысл. В то же время имеет смысл, что Excel не может читать Гиды. Спасибо за ваш быстрый ответ!! ура –