Exporter des données à un fichier excel
Fermé
thibaugosse
Messages postés
9
Date d'inscription
mardi 7 juin 2016
Statut
Membre
Dernière intervention
13 juin 2016
-
7 juin 2016 à 11:43
Utilisateur anonyme - 7 juin 2016 à 18:12
Utilisateur anonyme - 7 juin 2016 à 18:12
Bonjour, je suis bloqué sur un problème depuis quelques jours et je n'arrive vraiment pas à comprendre pourquoi.
J'ai créé un formulaire où l'on renseigne un certains nombre d'informations et on peut exporter ces informations sur un fichier csv. Lorsque j'essaye d'ouvrir ce fichier avec le bloc note cela me marque des signes incompréhensibles de ce genre là :
Cq·ÃNsüD¦õ$¢Š%†Ù襤Ò`¯)qmœÔ.ôšcéuyÖ
Ê<M·2üÕ€b¦)Ž•‚p¬6 NƒÎÿk»ºnK|qåg–¯XÈoÎd9ŠêÐ +˜Z$ÇÉ&‰Ä ¯Ãä7†É—`²ÃdK0Û5aÈè
J'aimerai donc savoir comment faire pour pouvoir afficher mes données et non pas ces signes.
Merci d'avoir lu
J'ai créé un formulaire où l'on renseigne un certains nombre d'informations et on peut exporter ces informations sur un fichier csv. Lorsque j'essaye d'ouvrir ce fichier avec le bloc note cela me marque des signes incompréhensibles de ce genre là :
Cq·ÃNsüD¦õ$¢Š%†Ù襤Ò`¯)qmœÔ.ôšcéuyÖ
Ê<M·2üÕ€b¦)Ž•‚p¬6 NƒÎÿk»ºnK|qåg–¯XÈoÎd9ŠêÐ +˜Z$ÇÉ&‰Ä ¯Ãä7†É—`²ÃdK0Û5aÈè
J'aimerai donc savoir comment faire pour pouvoir afficher mes données et non pas ces signes.
Merci d'avoir lu
A voir également:
- Exporter des données à un fichier excel
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Liste déroulante excel - Guide
- Ouvrir un fichier .bin - Guide
4 réponses
Utilisateur anonyme
7 juin 2016 à 13:31
7 juin 2016 à 13:31
Bonjour,
Dans ma boule de cristal, je vois qu'à la ligne 123 de ton code il faut ajouter un espace.
Sinon, au cas où tu voudrais une reponse sérieuse, il faudrait poster ton code en utilisant cette procédure
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Dans ma boule de cristal, je vois qu'à la ligne 123 de ton code il faut ajouter un espace.
Sinon, au cas où tu voudrais une reponse sérieuse, il faudrait poster ton code en utilisant cette procédure
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
thibaugosse
Messages postés
9
Date d'inscription
mardi 7 juin 2016
Statut
Membre
Dernière intervention
13 juin 2016
7 juin 2016 à 13:34
7 juin 2016 à 13:34
Désolé voici le code
private void btnExporter_Click(object sender, EventArgs e)
{
// Creating a Excel object.
Microsoft.Office.Interop.Excel._Application excel = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel._Workbook workbook = excel.Workbooks.Add(Type.Missing);
Microsoft.Office.Interop.Excel._Worksheet worksheet = null;
try
{
worksheet = workbook.ActiveSheet;
worksheet.Name = "ExportedFromDatGrid";
int cellRowIndex = 1;
int cellColumnIndex = 2;
int b = 50;
int c = 100;
int d = 150;
String Date = System.DateTime.Now.ToShortDateString();
int minute = System.DateTime.Now.Minute; // les minutes
int heure = System.DateTime.Now.Hour; // l'heure
string HEURE = heure.ToString() + ":" + minute.ToString();
string DATE = Date + " " + HEURE;
MessageBox.Show("DATE = " + DATE);
worksheet.Cells[1, 1] = ":DATE";
worksheet.Cells[2, 1] = ":GROUP No.";
worksheet.Cells[3, 1] = ":GROUP NAME";
worksheet.Cells[4, 1] = "ITEM NAME";
worksheet.Cells[1, 2] = DATE;
worksheet.Cells[2, 2] = "1";
worksheet.Cells[3, 2] = "essai";
worksheet.Cells[4, 2] = "VALUE";
cellRowIndex = 5;
#region variateur1
if (Variateur1.index != 0)
{
cellColumnIndex = 2;
for (int i = 1; i <= 50; i++)
{
if (Variateur1.tab_seq[99 + i] == 0)
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = 0;
}
else
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = i;
}
cellRowIndex = cellRowIndex + 1;
}
for (int i = 0; i <= 49; i++)
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = Variateur1.tab_seq[b + i];
cellRowIndex = cellRowIndex + 1;
}
for (int i = 0; i <= 49; i++)
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = Variateur1.tab_seq[c + i];
cellRowIndex = cellRowIndex + 1;
}
for (int i = 0; i <= 49; i++)
{
if (i == 49)
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = Variateur1.NbMaille;
}
else
{
if (option.mmrack1 == 1)
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = Variateur1.tab_seq[d + i];
}
else if (option.maillecm1 == 1)
{
worksheet.Cells[cellRowIndex, cellColumnIndex] = Variateur1.tabf_seq[d + i] * 100;
}
}
cellRowIndex = cellRowIndex + 1;
}
}
#endregion
//Getting the location and file name of the excel to save from user.
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.Filter = "CSV files (*.csv)|*.csv|All files (*.*)|*.*";
saveDialog.FilterIndex = 2;
if (saveDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
workbook.SaveAs(saveDialog.FileName);
MessageBox.Show("Export Successful");
}
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
excel.Quit();
workbook = null;
excel = null;
}
Utilisateur anonyme
7 juin 2016 à 13:39
7 juin 2016 à 13:39
Le code que tu montres est fait pour construire un xls, et non un csv.
Je suis à peu près sur, sans l'avoir testé, qu'en changeant l'extension ça va marcher.
Je suis à peu près sur, sans l'avoir testé, qu'en changeant l'extension ça va marcher.
thibaugosse
Messages postés
9
Date d'inscription
mardi 7 juin 2016
Statut
Membre
Dernière intervention
13 juin 2016
7 juin 2016 à 13:47
7 juin 2016 à 13:47
Oui par défaut cela construit un xls mais étant débutant c'est un code que j'ai trouvé sur internet et que j'ai modifié à ma sauce, le fait de mettre saveDialog.Filter = "CSV files (*.csv)|*.csv|All files (*.*)|*.*"; ne produit pas du vrai csv alors ? Quand tu dit changer l'extension c'est changer le code entier pour un autre fait pour le csv ou alors juste changer quelques lignes ?
Xls est un binaire, spécifique aux version d'excel avant 2007.
Csv est un fichier texte ascii, avec un formatage définit, et qui n'a rien à voir avec Excel. Par contre excel sait l'importe ou l'exporter.
Ce sont deux fichiers très différents.
Si tu prends un fichier xls, que tu modifies son extension à la main, en csv, et que tu essayes de l'ouvrir avec notepad ou même excel, tu auras ce type de résultat.
C'est ce que tu fais dans ton code. Donc Pour que ce code fonctionne, le filtre ne peut être que *.xls.
Comme ton titre est
Cela solutionne ta question
Csv est un fichier texte ascii, avec un formatage définit, et qui n'a rien à voir avec Excel. Par contre excel sait l'importe ou l'exporter.
Ce sont deux fichiers très différents.
Si tu prends un fichier xls, que tu modifies son extension à la main, en csv, et que tu essayes de l'ouvrir avec notepad ou même excel, tu auras ce type de résultat.
C'est ce que tu fais dans ton code. Donc Pour que ce code fonctionne, le filtre ne peut être que *.xls.
Comme ton titre est
Exporter des données à un fichier excel.
Cela solutionne ta question