Cellules excel pleinnent mais apparaissent vide

ermaladouce -  
 Utilisateur anonyme -
Bonjour,

j'ai créer une application (c# visual studio 2015) qui consomme le fichier Excel, tout ce passe bien , mais dans certain fichiers, des cellules apparaissent vide dans le code même si en réalité ils contiennent des données. :-o !!!
J'ai besoin de votre aide et merci d'avance
A voir également:

1 réponse

Utilisateur anonyme
 
Bonjour.

En regardant dans ma boule de cristal, je pense qu’il te manque un ; à la ligne 2.

Ha pardon, tu voulais une réponse sérieuse? Alors il faut poser une question à laquelle on peut répondre.

Il y a plusieurs façons d’accéder à un fichier excel en C#, il y a plusieurs formats de fichiers excel etc...
Comment veux tu que l’on puisse répondre sans plus d’infos.

Tout d’abord le code d’accès aux données, avec la coloration syntaxique en spécifiant bien que ton code est du csharp, voir explications ici
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Ensuite, si cela est possible un fichier excel qui pose problème (sans données confidentielles) en précisant quelles cellules.
Il faut passer par un hébergeur tiers comme cijoint ou free gros fichier.
0
ermaladouce
 
désolé :-) ,
voila le code :

DataSet myDataset = new DataSet();
OleDbDataAdapter myData = new OleDbDataAdapter();

 string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;  Data Source=" + chemainFichier+ "; Extended Properties=Excel 8.0;";

myData = new OleDbDataAdapter("SELECT * FROM [Feuil3$]", strConn);
myData.Fill(myDataset);
 
for (int i = 0; i < myDataset.Tables[0].Rows.Count; i++)
                {
                     if (string.IsNullOrEmpty(myDataset.Tables[0].Rows[i][1].ToString()))
                        {
                            //  des instructions a faire
      
                        }
       }
0
ermaladouce
 
et merci pour votre réponse
0
Utilisateur anonyme
 
Merci à Chris d'avoir mis la coloration syntaxique c'est enfin lisible.

Le truc qui m'interpelle c'est
if (string.IsNullOrEmpty(myDataset.Tables[0].Rows[i][1].ToString()))
                        {
                            //  des instructions a faire
      
                        }

Tu ne fais donc des instructions que si la cellule est vide?
0
ermaladouce
 
oui, si la cellule est vide j'enregistre son nom dans la table des rejets et je ne consomme pas le fichier, sinon je continu le traitement.
le problème et que certain cellules contient des données mais quand je contrôle pas a pas, le "myDataset.Tables[0].Rows[i][1].ToString()" est vide .
0
Utilisateur anonyme
 
Ok là, sans exemple de fichier je ne sais
0