Bonjour,
Je voulais obtenir et afficher des données excel dans un datagrid alors je me suis pris ainsi:
mais après voir choisi le fichier voulu je reçois le message d'erreur suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 //Afficher un OpenFileDialog permettant à l'utilisateur de choisir le fichier excel qu'il veut OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.Filter = "Tous les fichiers Excel|*.xlsx;*.xls"; openFileDialog1.Title = "Selectionner un fichier Excel"; if (openFileDialog1.ShowDialog() == DialogResult.OK) { //on récuper le chemin d'acces complet au fichier string filepath = openFileDialog1.FileName.ToString(); string chemin = @filepath; //Créer une variable de chaine de connexion string sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;"+ "Data Source="+ chemin +";"+ "Extended Properties=Excel 8.0;"; //Créer un objet de connexion à l'aide de la chaine de connexion précédente OleDbConnection objconn = new OleDbConnection(sConnectionString); //Ouvrir une connexion avec la base de données objconn.Open(); //Créer uen nouvelle commande OleDb pour renvoyer les données de la feuille de calcul OleDbCommand objCmdSelect = new OleDbCommand("Select * from maPlage1.Feuil1", objconn); //Créer un nouvel adaptateur utilisé pour générer un dataset basé sur l'instruction sql précédente OleDbDataAdapter objAdapter1 = new OleDbDataAdapter(); //passer la commande à la carte objAdapter1.SelectCommand = objCmdSelect; //créer un nouveau dataset DataSet objDataSet1 = new DataSet(); //Remplir le dataset objAdapter1.Fill(objDataSet1, "XLData"); //lier les données au controle datagrid dataGrid1.DataSource = objDataSet1.Tables[0].DefaultView; dataGrid1.SetDataBinding(objDataSet1, "XLData"); objconn.Close(); }
avez vous une idée d'où ça peut venir?Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'Feuil1'.
Assurez-vous que l'objet existe et que vous avez correctement saisi son nom et son chemin d'accès.
Merci d'avance
Partager