cs_rodcobalt22
Messages postés193Date d'inscriptiondimanche 10 février 2002StatutMembreDernière intervention16 février 2016
-
30 août 2007 à 13:22
yakuzayang59
Messages postés1Date d'inscriptionmardi 26 mai 2009StatutMembreDernière intervention12 juillet 2011
-
12 juil. 2011 à 16:31
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
yakuzayang59
Messages postés1Date d'inscriptionmardi 26 mai 2009StatutMembreDernière intervention12 juillet 2011 12 juil. 2011 à 16:31
Bonjour, je déterre ce code pour une petite question. Est-il possible de faire une requête sur plusieurs feuilles?
cs_MoKaLux
Messages postés39Date d'inscriptionvendredi 5 octobre 2007StatutMembreDernière intervention27 mars 20091 16 janv. 2009 à 02:11
Bonjour,
Avec le code que g posté juste au dessus, il m'est impossible de modifier les cellules de mon datagridview (manuel ou prog).
Quand je fais :
foreach (var ang in toutExcel.Where(a => a.myticker.EndsWith("LN")))
{
ang.mycourspyc /= 100;
}
Il me dit cannot modify because it is readonly.
Qq'un peut-il m'aider svp
wisdoom
Messages postés1Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention30 décembre 2008 30 déc. 2008 à 09:35
Excellent, juste ce que je cherchais !
cs_MoKaLux
Messages postés39Date d'inscriptionvendredi 5 octobre 2007StatutMembreDernière intervention27 mars 20091 11 déc. 2008 à 20:53
voilà la solution :
var fonds = from fond in dt01.AsEnumerable()
where fond.IsNull("Ponds")==false &&
fond.Field<double>("Fonds") == 3
select new
{
myfond = fond.Field<double>("Fonds"),
myticker = fond.Field<string>("Tickers"),
myweight = fond.Field<double>("Ponds"),
myisin = fond.Field<string>("Id Isin"),
myname = fond.Field<string>("Name"),
};
dataGridView1.DataSource = fonds.ToList();
Magnifique merci beaucoup pour le début sans quoi rien n'aurait été possible...
Salutations à vous tous ...
cs_MoKaLux
Messages postés39Date d'inscriptionvendredi 5 octobre 2007StatutMembreDernière intervention27 mars 20091 8 déc. 2008 à 22:14
Bonjour, j'ai avancé dans mes recherches et suis arrivé avec un code pour faire des recherche dans le datagridview avec linq :
if (dt != null && dt.Rows.Count > 0)
{
dataGridView1.DataSource = dt; // ok
}
// LINQ
var query = from ticker in dt.AsEnumerable()
where ticker.Field<string>("Tickers") == "MTP FP"
select new
{
//myfond = ticker.Field(dt.Columns[0]),
myticker = ticker.Field<string>("Tickers"),
myisin = ticker.Field<string>("Id Isin"),
myname = ticker.Field<string>("Name")
};
dataGridView2.DataSource = query.ToList();
}
Donc je query la datagridview1 et avec linq je retourne les resultats dans la datagridview2. SUPER...
Mais maintenant mon pb est comment puis-je faire des querry sur des int ? en effet mes query ne marchent qu'avec des strings ! par ex dans la colonne 3 j'ai des chiffres et je voudrais pouvoir selectioner seulement les chiffres qui dépassent 5%. Merci pour votre aide.
cs_MoKaLux
Messages postés39Date d'inscriptionvendredi 5 octobre 2007StatutMembreDernière intervention27 mars 20091 7 déc. 2008 à 18:29
Bonsoir, c bon g appris un peu plus grâce à vous tous et je vous en remercie.
if (dt != null && dt.Rows.Count > 0)
{
// WOUAWWW !!! merci
dataGridView1.DataSource = dt; // ok
}
}
Maintenant je voudrais poser une ou deux questions svp.
Comment faire une recherche (une query) dans le datagridview ? Peut-on utiliser linq ?
Je voudrais par exemple savoir les cellules de la colonne 3 dont la valeur est superieur à 5% et les afficher dans un labelbox.
Merci de votre aide...
cs_MoKaLux
Messages postés39Date d'inscriptionvendredi 5 octobre 2007StatutMembreDernière intervention27 mars 20091 25 nov. 2008 à 23:33
Bonsoir,
je suis désolé, ton code m'interesse mais je débute avec les bases de données.
Comment puis-je "populer" une textbox ou autre chose ?
Je ne sais pas comment faire
J'ai fait :
richTextBox1.Text = dt.ToString();
mais le texte de la richtextbox me renvoie : "XLData"
Help please...
rocaro
Messages postés4Date d'inscriptionjeudi 28 avril 2005StatutMembreDernière intervention28 mai 2008 28 mai 2008 à 18:18
Bonjour,
J'ai utilis? ce code aussi dans un de mes programmes et en effet, Excel 8.0 correspond ? un fichier enregistr? sous Excel 97-2003 sinon, ca marche pas...
Je serais aussi int?ress'e pour pouvoir traiter des fichiers provenant de n'importe quelle version.
De plus, j'aimerais pouvoir passer en param?tre l'indice de la feuille et non son nom car c'est jamais le m?me dans tous les fichiers que je traite. Quelqu'un a une id'e ?
Je cherche un moyen de lire un fichier excel sans utiliser Office, donc je pense que votre code est une solution pour moi. Mais j'ai une question, au debut on a la ligne suivante :
A quoi correspond le "Excel 8.0" ?
Est-ce qu'on doit connaître la version d'Excel avec laquelle le fichier a été ecrit pour pouvoir le lire?
en fait, je voudrais rendre mon code complètement indépendant d'Excel.
Merci
cs_rodcobalt22
Messages postés193Date d'inscriptiondimanche 10 février 2002StatutMembreDernière intervention16 février 2016 10 avril 2008 à 09:11
Salut,
j'ai fait les teste dans mon coin mais je ne recontre pas de soucis particulier avec le typage des colonnes.
Mon test avec le shémas suivant me renvoie bien toutes mes occurences (nombre,texte,texte,date)
J'ai directement typé dans Excel et RAS que ce soit en Win ou en Web.
Comment récupère tu les données. Que fais tu avec cette datatable ? Moi je lie directement dans le datasource ... et ça marche.
A la limmite envoie moi une partie de ton code en MP pour voir
cs_tintin972
Messages postés36Date d'inscriptionlundi 17 mars 2008StatutMembreDernière intervention16 mai 2008 9 avril 2008 à 14:22
Salut j'ai un autre petit problème,
En fait cela revient au problème de type de donné que julsupinfo à rencontré.
Lorsqu'on importe le fichier excel VS interprète la colonne étant typé comme la première valeur. C'est a dire que si dans votre colonne votre première valeur (case) est un chiffre il s'attend dans la suite de la colonne à trouver des chiffres, et si il rencontre autre chose (du texte) il ne l'affiche pas...
Julsupinfo a résolu son pb en rajoutant de manière à n'avoir que du string dans son fichier excel...Moi je n'ai pas la chance de pourvoir modifier les données de mon excel, et devinez quoi dans une des colonne j'ai du string ET du num...
Quelqu'un aurait t il une idée pour que VS affiche tout??? Même si il transforme tout en string ca me dérange vraiment pas! Mais faut absolument que j'arrive a afficher toutes les donnés et sans modifier l'excel!
cs_tintin972
Messages postés36Date d'inscriptionlundi 17 mars 2008StatutMembreDernière intervention16 mai 2008 4 avril 2008 à 15:09
J'ai résolue mon problème, oubliez les postes que j'ai pu écrire ici...Ce code est parfait et fonctionne sur .net2.0 .
Mon erreur était plus que bête (tout comme moi)j'ai pas percuté que le nom de la feuille est vraiment le NOM DE LA FEUILLE!!!!! Pas le nom du fichier, dans mon cas l'appel de fonction était donc :
GetfichierFeuilleFichierExcel(@"C:\test.xls", "feuil1");
Bon ben n'empêche je vous remercie pour votre aide et j'espère que ma bétise en aidera d'autre...
cs_tintin972
Messages postés36Date d'inscriptionlundi 17 mars 2008StatutMembreDernière intervention16 mai 2008 4 avril 2008 à 13:56
Comprend po,
C'est bon de savoir que ca marche sur .net 2.0!
Je copie la fonction tel quel (sans modifier la commande ou quoi que ce soit).
Je crée un bouton.
Sur l'évenement de click du bouton je fait appel a la fonction comme suit :
GetfichierFeuilleFichierExcel(@"C:\test.xls", "test");
A priori il se connecte mais arrivé à ce fill, il me retourne une OLeDbExeption : 'test$' n'est pas un nom valide.Vérifiez qu'il n'y ai pas un caractere invalide...blablabla..
J'ai testé avec une version pro en me disant que c'était une restriction de la version express...Marche po non plus...
C'est surement un truc tout bête que je fais mal...mon appel de la fonction n'est pas bon??
En tous cas merci d'essayer de m'aider...
ethan_decoster
Messages postés38Date d'inscriptionmardi 31 janvier 2006StatutMembreDernière intervention 4 avril 2008 4 avril 2008 à 12:51
Bonjour,
Pour moi c'est plus une erreur dans la commande plutot qu'une erreur de fmw (je l'ai fait touner sous du 2.0 et pas de soucis).
strNomFeuilleExcel est présent dans le fichier excel.
Pour l'erreur de fichier, je suis d'accord avec rodcobalt22
J'espère que j'ai su t'aider !!!
cs_rodcobalt22
Messages postés193Date d'inscriptiondimanche 10 février 2002StatutMembreDernière intervention16 février 2016 4 avril 2008 à 08:51
Le code présenté est du Fwk 1.1
Serait il possible qu'il y es une modification à cet endroit ?
De plus, la méthode "fill" de l'adapter remplit une DataSource. Donc à mon avis rien à voir avec le fichier. Pour une erreur du fichier, ça devrait levé une exception au niveau du "oCnx.Open();"
A mon avis, et si j'ai bien compris ton erreur est ailleur.
Test le sur le Fwk 1.1 pour voir si l'erreur se répette.
Eventuellement, vérifie le chemin du fichier ... et la requête select si tu la modifié.
J'espère que cela peut t'aider
bon courage ;)
cs_tintin972
Messages postés36Date d'inscriptionlundi 17 mars 2008StatutMembreDernière intervention16 mai 2008 3 avril 2008 à 15:48
Bonjour
Ca à l'air super bien faitcomme code mais j'ai un probleme a la ligne 32. Je programme avec C# sous VS2005express. Et il me renvoi une erreur ici : objAdapter.Fill(oDs, "XLData");
Il aime pas le nom de fichier que je lui donne...
Pourtant je lui passe un chemin @"C:\sample.xls" et un nom "sample.xls"
Je comprend pas pourquoi ca marche po...Si qq a une idée ca m'aiderais bien!
Merci d'avance
cs_veridik
Messages postés13Date d'inscriptionmercredi 11 mai 2005StatutMembreDernière intervention24 juillet 2013 20 févr. 2008 à 09:08
Code bien ficelé !! très pratique
ethan_decoster
Messages postés38Date d'inscriptionmardi 31 janvier 2006StatutMembreDernière intervention 4 avril 2008 23 nov. 2007 à 11:41
Tu n'avais pas l'air sûr, j'ai juste confirmer !!! mdr
cs_rodcobalt22
Messages postés193Date d'inscriptiondimanche 10 février 2002StatutMembreDernière intervention16 février 2016 23 nov. 2007 à 09:37
Heu ... c'est pas ce que je viens d'écrire en haut ??
lol ;)
ethan_decoster
Messages postés38Date d'inscriptionmardi 31 janvier 2006StatutMembreDernière intervention 4 avril 2008 22 nov. 2007 à 20:14
Oui c'est bien ca !!! Merci.
Ajoutez le paramètre HDR=NO si vous souhaitez également récupérer le contenu de la première ligne. Celle ci est considérée comme un entête (ou Champ), par défaut.
cs_rodcobalt22
Messages postés193Date d'inscriptiondimanche 10 février 2002StatutMembreDernière intervention16 février 2016 22 nov. 2007 à 09:31
J'ai tester de mon coté la première ligne est en faite retourné comme un titre de colonne. Il faut modifié les paramètres de ta chaine de connexion afin de ne prendre en compte la première ligne.
Il faut modifier la propriété suivante (si je me souviens bien ) "HDR no" à la place de "HDR yes".
N'hésite pas à me faire un retour pour me le confirmer
ethan_decoster
Messages postés38Date d'inscriptionmardi 31 janvier 2006StatutMembreDernière intervention 4 avril 2008 21 nov. 2007 à 13:46
Si j'ai 10 valeurs dans mon fichier xls, numérottées pour test de 1 à 10, le résultat est de 2 à 10 (9 valeurs). En faisant un foreach(datarow row in tbresult) { console.writeline(row[0].ToString()); }
JuLsupinfo
Messages postés11Date d'inscriptionmardi 24 février 2004StatutMembreDernière intervention21 novembre 2007 21 nov. 2007 à 13:20
Bonjour, essaye de binder ton dataTable dans un gridView pour voir ce qu'il te retourne.
ethan_decoster
Messages postés38Date d'inscriptionmardi 31 janvier 2006StatutMembreDernière intervention 4 avril 2008 21 nov. 2007 à 13:00
Bonjour,
J'ai repris le code pour une applic qui doit scrutté un fichier excel, jusque là tout va bien !! :)
Sauf que le dtResult.Rows.Count me retourne le nombre de lignes - 1 :(
En fait ca me zappe la première ligne (A*)
Quelqu'un a une solution ??
JuLsupinfo
Messages postés11Date d'inscriptionmardi 24 février 2004StatutMembreDernière intervention21 novembre 2007 28 sept. 2007 à 14:35
Merci de ta réponse.
J'ai trouvé le problème... il se trouve que certaines colonnes du fichier Excel sont "typés". C'est-à-dire que les colonne que je peux selectionner sont au format "texte", les autres, au format "standard" ou "decimal" sous Excel ne sont pas pris en compte. :(
J'ai rajouté un espace blanc avant chaque valeur des colonnes posant problème pour les transformé en type "texte" et cela fonctionne maintenant.
Encore merci.
cs_rodcobalt22
Messages postés193Date d'inscriptiondimanche 10 février 2002StatutMembreDernière intervention16 février 2016 28 sept. 2007 à 10:48
Parce qu'il interprète les valeurs en string peut importe leur nature ?
Je n'ai jamais fais gaffe, je vais vérifier mais à mon avis, il ne caste pas les retours, après tout c'est qu'un fichier Excel ^^
JuLsupinfo
Messages postés11Date d'inscriptionmardi 24 février 2004StatutMembreDernière intervention21 novembre 2007 26 sept. 2007 à 17:20
Bonsoir,
J'ai un autre problème ^_^
Lorsque je fais un "SELECT *" et que je bind le DataTable à un GridView, par exemple, il ne me retourne pas les valeur de type Number ou Int (seulement des champs ayant des valeur de type String).
Sauriez-vous pourquoi ?
Merci d'avance.
JuLsupinfo
Messages postés11Date d'inscriptionmardi 24 février 2004StatutMembreDernière intervention21 novembre 2007 26 sept. 2007 à 10:05
Merci beaucoup pour ta réponse, c'est effectivement ce dont j'avais besoin.
cs_rodcobalt22
Messages postés193Date d'inscriptiondimanche 10 février 2002StatutMembreDernière intervention16 février 2016 26 sept. 2007 à 09:00
Si tu connais la position exacte de la ligne et celle de la colonne, il suffit de prélever directement dans le DataTable aux coordonnées spécifié.
Cette méthode fait une sorte de photo du la feuille Excel qui en faite n'est qu'une table.
12 juil. 2011 à 16:31
16 janv. 2009 à 02:11
Avec le code que g posté juste au dessus, il m'est impossible de modifier les cellules de mon datagridview (manuel ou prog).
Quand je fais :
foreach (var ang in toutExcel.Where(a => a.myticker.EndsWith("LN")))
{
ang.mycourspyc /= 100;
}
Il me dit cannot modify because it is readonly.
Qq'un peut-il m'aider svp
30 déc. 2008 à 09:35
11 déc. 2008 à 20:53
var fonds = from fond in dt01.AsEnumerable()
where fond.IsNull("Ponds")==false &&
fond.Field<double>("Fonds") == 3
select new
{
myfond = fond.Field<double>("Fonds"),
myticker = fond.Field<string>("Tickers"),
myweight = fond.Field<double>("Ponds"),
myisin = fond.Field<string>("Id Isin"),
myname = fond.Field<string>("Name"),
};
dataGridView1.DataSource = fonds.ToList();
Magnifique merci beaucoup pour le début sans quoi rien n'aurait été possible...
Salutations à vous tous ...
8 déc. 2008 à 22:14
private void button1_Click(object sender, EventArgs e)
{
DataTable dt =
GetFeuilleFichierExcel(jeudi.xls, "xxx");
if (dt != null && dt.Rows.Count > 0)
{
dataGridView1.DataSource = dt; // ok
}
// LINQ
var query = from ticker in dt.AsEnumerable()
where ticker.Field<string>("Tickers") == "MTP FP"
select new
{
//myfond = ticker.Field(dt.Columns[0]),
myticker = ticker.Field<string>("Tickers"),
myisin = ticker.Field<string>("Id Isin"),
myname = ticker.Field<string>("Name")
};
dataGridView2.DataSource = query.ToList();
}
Donc je query la datagridview1 et avec linq je retourne les resultats dans la datagridview2. SUPER...
Mais maintenant mon pb est comment puis-je faire des querry sur des int ? en effet mes query ne marchent qu'avec des strings ! par ex dans la colonne 3 j'ai des chiffres et je voudrais pouvoir selectioner seulement les chiffres qui dépassent 5%. Merci pour votre aide.
7 déc. 2008 à 18:29
private void button1_Click(object sender, EventArgs e)
{
DataTable dt =
GetfichierFeuilleFichierExcel
(@"E:\Coursjeudi.xls", "Bloomberg");
if (dt != null && dt.Rows.Count > 0)
{
// WOUAWWW !!! merci
dataGridView1.DataSource = dt; // ok
}
}
Maintenant je voudrais poser une ou deux questions svp.
Comment faire une recherche (une query) dans le datagridview ? Peut-on utiliser linq ?
Je voudrais par exemple savoir les cellules de la colonne 3 dont la valeur est superieur à 5% et les afficher dans un labelbox.
Merci de votre aide...
25 nov. 2008 à 23:33
je suis désolé, ton code m'interesse mais je débute avec les bases de données.
Comment puis-je "populer" une textbox ou autre chose ?
Je ne sais pas comment faire
J'ai fait :
richTextBox1.Text = dt.ToString();
mais le texte de la richtextbox me renvoie : "XLData"
Help please...
28 mai 2008 à 18:18
J'ai utilis? ce code aussi dans un de mes programmes et en effet, Excel 8.0 correspond ? un fichier enregistr? sous Excel 97-2003 sinon, ca marche pas...
Je serais aussi int?ress'e pour pouvoir traiter des fichiers provenant de n'importe quelle version.
De plus, j'aimerais pouvoir passer en param?tre l'indice de la feuille et non son nom car c'est jamais le m?me dans tous les fichiers que je traite. Quelqu'un a une id'e ?
Merci d'avance
6 mai 2008 à 15:30
Je cherche un moyen de lire un fichier excel sans utiliser Office, donc je pense que votre code est une solution pour moi. Mais j'ai une question, au debut on a la ligne suivante :
string strCnx = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strCheminFichier + ";Extended Properties=" + (char)34 + "Excel 8.0;HDR=Yes;" + (char)34 + ";
A quoi correspond le "Excel 8.0" ?
Est-ce qu'on doit connaître la version d'Excel avec laquelle le fichier a été ecrit pour pouvoir le lire?
en fait, je voudrais rendre mon code complètement indépendant d'Excel.
Merci
10 avril 2008 à 09:11
j'ai fait les teste dans mon coin mais je ne recontre pas de soucis particulier avec le typage des colonnes.
Mon test avec le shémas suivant me renvoie bien toutes mes occurences (nombre,texte,texte,date)
J'ai directement typé dans Excel et RAS que ce soit en Win ou en Web.
Comment récupère tu les données. Que fais tu avec cette datatable ? Moi je lie directement dans le datasource ... et ça marche.
A la limmite envoie moi une partie de ton code en MP pour voir
9 avril 2008 à 14:22
En fait cela revient au problème de type de donné que julsupinfo à rencontré.
Lorsqu'on importe le fichier excel VS interprète la colonne étant typé comme la première valeur. C'est a dire que si dans votre colonne votre première valeur (case) est un chiffre il s'attend dans la suite de la colonne à trouver des chiffres, et si il rencontre autre chose (du texte) il ne l'affiche pas...
Julsupinfo a résolu son pb en rajoutant de manière à n'avoir que du string dans son fichier excel...Moi je n'ai pas la chance de pourvoir modifier les données de mon excel, et devinez quoi dans une des colonne j'ai du string ET du num...
Quelqu'un aurait t il une idée pour que VS affiche tout??? Même si il transforme tout en string ca me dérange vraiment pas! Mais faut absolument que j'arrive a afficher toutes les donnés et sans modifier l'excel!
4 avril 2008 à 15:09
Mon erreur était plus que bête (tout comme moi)j'ai pas percuté que le nom de la feuille est vraiment le NOM DE LA FEUILLE!!!!! Pas le nom du fichier, dans mon cas l'appel de fonction était donc :
GetfichierFeuilleFichierExcel(@"C:\test.xls", "feuil1");
Bon ben n'empêche je vous remercie pour votre aide et j'espère que ma bétise en aidera d'autre...
4 avril 2008 à 13:56
C'est bon de savoir que ca marche sur .net 2.0!
Je copie la fonction tel quel (sans modifier la commande ou quoi que ce soit).
Je crée un bouton.
Sur l'évenement de click du bouton je fait appel a la fonction comme suit :
GetfichierFeuilleFichierExcel(@"C:\test.xls", "test");
A priori il se connecte mais arrivé à ce fill, il me retourne une OLeDbExeption : 'test$' n'est pas un nom valide.Vérifiez qu'il n'y ai pas un caractere invalide...blablabla..
J'ai testé avec une version pro en me disant que c'était une restriction de la version express...Marche po non plus...
C'est surement un truc tout bête que je fais mal...mon appel de la fonction n'est pas bon??
En tous cas merci d'essayer de m'aider...
4 avril 2008 à 12:51
Pour moi c'est plus une erreur dans la commande plutot qu'une erreur de fmw (je l'ai fait touner sous du 2.0 et pas de soucis).
strNomFeuilleExcel est présent dans le fichier excel.
Pour l'erreur de fichier, je suis d'accord avec rodcobalt22
J'espère que j'ai su t'aider !!!
4 avril 2008 à 08:51
Serait il possible qu'il y es une modification à cet endroit ?
De plus, la méthode "fill" de l'adapter remplit une DataSource. Donc à mon avis rien à voir avec le fichier. Pour une erreur du fichier, ça devrait levé une exception au niveau du "oCnx.Open();"
A mon avis, et si j'ai bien compris ton erreur est ailleur.
Test le sur le Fwk 1.1 pour voir si l'erreur se répette.
Eventuellement, vérifie le chemin du fichier ... et la requête select si tu la modifié.
J'espère que cela peut t'aider
bon courage ;)
3 avril 2008 à 15:48
Ca à l'air super bien faitcomme code mais j'ai un probleme a la ligne 32. Je programme avec C# sous VS2005express. Et il me renvoi une erreur ici : objAdapter.Fill(oDs, "XLData");
Il aime pas le nom de fichier que je lui donne...
Pourtant je lui passe un chemin @"C:\sample.xls" et un nom "sample.xls"
Je comprend pas pourquoi ca marche po...Si qq a une idée ca m'aiderais bien!
Merci d'avance
20 févr. 2008 à 09:08
23 nov. 2007 à 11:41
23 nov. 2007 à 09:37
lol ;)
22 nov. 2007 à 20:14
Ajoutez le paramètre HDR=NO si vous souhaitez également récupérer le contenu de la première ligne. Celle ci est considérée comme un entête (ou Champ), par défaut.
22 nov. 2007 à 09:31
Il faut modifier la propriété suivante (si je me souviens bien ) "HDR no" à la place de "HDR yes".
N'hésite pas à me faire un retour pour me le confirmer
21 nov. 2007 à 13:46
21 nov. 2007 à 13:20
21 nov. 2007 à 13:00
J'ai repris le code pour une applic qui doit scrutté un fichier excel, jusque là tout va bien !! :)
Sauf que le dtResult.Rows.Count me retourne le nombre de lignes - 1 :(
En fait ca me zappe la première ligne (A*)
Quelqu'un a une solution ??
28 sept. 2007 à 14:35
J'ai trouvé le problème... il se trouve que certaines colonnes du fichier Excel sont "typés". C'est-à-dire que les colonne que je peux selectionner sont au format "texte", les autres, au format "standard" ou "decimal" sous Excel ne sont pas pris en compte. :(
J'ai rajouté un espace blanc avant chaque valeur des colonnes posant problème pour les transformé en type "texte" et cela fonctionne maintenant.
Encore merci.
28 sept. 2007 à 10:48
Je n'ai jamais fais gaffe, je vais vérifier mais à mon avis, il ne caste pas les retours, après tout c'est qu'un fichier Excel ^^
26 sept. 2007 à 17:20
J'ai un autre problème ^_^
Lorsque je fais un "SELECT *" et que je bind le DataTable à un GridView, par exemple, il ne me retourne pas les valeur de type Number ou Int (seulement des champs ayant des valeur de type String).
Sauriez-vous pourquoi ?
Merci d'avance.
26 sept. 2007 à 10:05
26 sept. 2007 à 09:00
Cette méthode fait une sorte de photo du la feuille Excel qui en faite n'est qu'une table.
Par Exemple :
DataTable dt = GetfichierFeuilleFichierExcel(@"c:\temp\toto.xls","toto");
if(dt != null && dt.Rows.Count > 0)
{
// les coordonnées sont les chiffres entre crochet
string str = dt[1][5].ToString();
}
Bien sur pour la colonne entière il suffit de gérer ça avec un boucle for par exemple.
25 sept. 2007 à 20:58
Merci d'avance.