Exporter des données Excel vers un DataTable et vérifier le type de données mixte
Scénarios d’utilisation possibles
Si une colonne contient des données de différents types, le programme lancera une exception de type lors de l’exportation des données vers un DataTable. Pour l’exportation d’un tableau de données, par défaut, Aspose.Cells évalue le type de données des valeurs en se basant sur la toute première valeur (cellule) dans la colonne. Donc, si la valeur est un nombre, cela signifie que le type de données de la colonne serait numérique, ce qui est raisonnable. Si la toute première valeur est un nombre mais qu’il y a des données ou des valeurs alphanumériques dans la colonne, un type de données de chaîne devrait être attribué. Pour y faire face, veuillez utiliser la surcharge ExportDataTable qui implique ExportDataTableOptions et essayez de définir l’attribut booléen ExportTableOptions.CheckMixedValueType sur “true” si une colonne contient à la fois des valeurs numériques et de chaîne pour éviter les erreurs.
Exporter des données Excel vers un DataTable et vérifier le type de données mixte
L’exemple suivant explique l’utilisation de la propriété ExportTableOptions.CheckMixedValueType pour exporter des données Excel vers un DataTable. Veuillez consulter le fichier Excel d’exemple, sa capture d’écran et la sortie de la console pour référence.
Code d’exemple
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Create workbook | |
Workbook workbook = new Workbook("sample.xlsx"); | |
// Access first worksheet | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Export Data Table Options | |
ExportTableOptions opts = new ExportTableOptions(); | |
opts.CheckMixedValueType = true; | |
// Export Data Table | |
DataTable dt = worksheet.Cells.ExportDataTable(0, 0, 7, 5, opts); | |
// Display the type of DataColumn | |
DataColumnCollection columns = dt.Columns; | |
foreach (DataColumn column in columns) | |
{ | |
Console.WriteLine(column.ColumnName + " = " + column.DataType); | |
} |
Capture d’écran


Sortie console
Ci-dessous se trouve la sortie de débogage de la console du code d’exemple ci-dessus
Column1 = System.String
Column2 = System.String
Column3 = System.Double
Column4 = System.Double
Column5 = System.String