Comment lire un .XLSX (Excel 2007) fichier à l'aide de ADO.NET? Je viens de trouver “impossible de trouver ISAM installable”-erreur
J'ai besoin de travailler dans .net 2.0
. Donc je ne peux pas utiliser OpenXML.
C'est mon code source et j'ai déjà Installé AccessDatabaseEngine.exe
.
Mais encore obtenir l'exception:
"Impossible de trouver ISAM installable".
J'ai aussi essayé de "Extended Properties=Excel 8.0"
dans la chaîne de connexion.
static void Main(string[] args)
{
DataSet dataSet = new DataSet();
OleDbConnection connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|Data Directory|\HSC.xlsx;Extended Properties=Excel 12.0;HDR=YES;");
OleDbDataAdapter dataAdapter= new OleDbDataAdapter("select * from [Sheet1$]", connection);
dataAdapter.Fill(dataSet);
}
OriginalL'auteur user366312 | 2010-10-23
Vous devez vous connecter pour publier un commentaire.
Selon Carl Prothman, qui devrait être
-- http://www.connectionstrings.com/excel-2007
Plus en détail:
Notez les guillemets simples.
HDR=YES;'
ou j'ai eu le message d'erreur "format de la chaîne d'initialisation n'est pas conforme à la spécification OLE DB"OriginalL'auteur Fionnuala
Je préfère utiliser le Microsoft OpenXML 2.0 SDK pour ce type de fonctionnalité. Il a une belle interface, et qu'il ne met pas une demande pour avoir microsoft Office installé sur la machine de la lecture du fichier XLSX qui est une bonne chose.
Je suis en train d'écrire cela à partir de mon mobile, donc difficile de fournir un lien, mais une recherche sur Google devrait facilement le trouver pour vous.
Lui donner un essai. Je pense que vous l'aimerez.
MODIFIER
Si vous ont à utiliser .NET 2.0, vous pouvez aller pour l'aide de la JET variante de la
OleDb
à la place.Qui signifie que vous allez faire quelque chose de ce genre pour se connecter:
Ensuite, vous pouvez l'interroger comme dans l'exemple ci-dessus:
L'essayer! Il suffit de noter que
Jet
avoir une certaine logique étrange de décider si une colonne est numérique ou pas. Voir la suite DONC des questions pour plus de détails: Problème avec l'aide de OleDbDataAdapter pour récupérer des données d'une feuille ExcelOriginalL'auteur Øyvind Bråthen
Ues assurez-vous que la chaîne de connexion ressemble à celui-ci ( même si vous accédez à microsoft excel version 10 ->
OriginalL'auteur Deena Fadel Awny