Bonjour,
Je voudrai écrire dans un fichier Excel déjà existant et à la suite des données déjà présentes.
Merci
Bonjour,
Je voudrai écrire dans un fichier Excel déjà existant et à la suite des données déjà présentes.
Merci
Salut louisa,
En C# on effectue cette opération de la façon suivante :
Voilà. Tu peux adapter ce code en ASP.Net facilement. Tu peux faire des tests pour vérifier s'il y a des données dans une cellule, etc.
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 object oMissing = System.Reflection.Missing.Value; object oFileName = @"c:\TonFichier.xls"; Excel.Application appExcel = new Excel.ApplicationClass(); Excel._Workbook classeurTest = appExcel.Workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet); Excel._Worksheet feuilleTest = (Excel._Worksheet)classeurTest.ActiveSheet; //Exemple d'utilisation de la propriété Range (Cells[row,column]) : Excel.Range aRange = feuilleTest.get_Range("d1", "d1"); aRange.Value2 = "salut"; //Ou encore comme ça : feuilleTest.get_Range("h2","h2").Value2 = "Ça marche"; //Ou encore : feuilleTest.Cells[1, 1] = this.textBox1.Text; feuilleTest.Cells[1, 2] = this.textBox2.Text; feuilleTest.Cells[2, 1] = this.textBox3.Text; //Fermeture d'Excel classeurTest.Close(true, oFileName , oMissing); //true ou false pour sauvegarder feuilleTest = null; classeurTest = null; appExcel.Quit(); appExcel = null;
N'oublie pas d'ajouter une référence à l'interop d'Excel.
J'espère que ça t'aidera.
iDaaX
Bonjour
Je n'arrive pas à mettre la référence :
il semble ne pas la connaitre en web .....
Code : Sélectionner tout - Visualiser dans une fenêtre à part using Microsoft.Office.Interop.Excel
J'ai trouvé ta référence au final , elle se télécharge sur cette page :
http://www.microsoft.com/downloads/d...displaylang=en
et d'ailleurs j'ai trouvé un article très bien sur le sujet :
http://www.microsoft.com/france/msdn...ier-perso.mspx
et cela dit cela reste du windows et non du web
rrrrhhh !
Salut louisa,
N'oublie pas ton tag [Résolu].
iDaaX
ben à vrai dire cela n'est pas résolu , vu que cela ne fonctionne pas en web (ASP.NET) et que c'est mon but.
En fait, pour utiliser cette référence, il faut que Excel soit installé sur le serveur sur lequel tourne ton appli web...
Est-ce que c'est le cas ?
Sinon, il existe une solution alternative :
Les fichiers excel peuvent être construits comme des fichiers XML. Tu trouveras une bibliothèque permettant de générer des fichiers XML ici : http://www.carlosag.net/Tools/ExcelX...r/Default.aspx
Par contre, ca serait sympa de mettre l'erreur exacte qu'il t'indique...
bonjour,
votre code fonctionne bien mais mon problème c que je veux écrire dans un fichier qui existe déjà en gardant ça forme mais l'instruction
Excel.Application appExcel = new Excel.ApplicationClass();
ouvre nouveau fichier de qui écrase l’ancien fichier
Plusieurs méthodes sont proposées dans la FAQ C# : Comment écrire dans un fichier Excel ?
Utiliser l'automation Excel n'est pas performant et nécessite que Excel soit installé sur le serveur web, comme l'a indiqué CiXi2troy.
Préférer ADO.NET, qui nécessite juste le pilote OleDb (installé par défaut sur les environnements Windows).
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager