Bonjour tout le monde,
Je génère un fichier xls avec C#.
J'ai un souci pour sauvegarder le fichier généré :
La ligne 274 est la suivante :Interception de System.Runtime.InteropServices.COMException
Message="Le serveur a généré une exception. (Exception de HRESULT : 0x80010105 (RPC_E_SERVERFAULT))"
Source="Interop.Microsoft.Office.Interop.Excel"
ErrorCode=-2147417851
StackTrace:
à Microsoft.Office.Interop.Excel.WorkbookClass.SaveAs(Object Filename, Object FileFormat, Object Password, Object WriteResPassword, Object ReadOnlyRecommended, Object CreateBackup, XlSaveAsAccessMode AccessMode, Object ConflictResolution, Object AddToMru, Object TextCodepage, Object TextVisualLayout, Object Local)
à Pharma.Form1.Fermer_ClasseurRN(String nomEtudiant, String dossier) dans G:\Documents de \Visual Studio 2008\Projects\Pharma\Pharma\Form1.cs:ligne 274
InnerException:
Ce qui est très étrange, c'est que j'utilise la même fonction pour une autre année de cours et ça fonctionne sans problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part classeurRN.SaveAs(@"c:\delibes\"+dossier+"\\"+ nomEtudiant + ".xls",
Voici le code de la fonction de sauvegarde et de fermeture :
edit : au lieu de me mettre un fichier xls, il me met un fichier sans extension qui se nomme par exemple CFBCE200
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 private void Fermer_ClasseurRN(string nomEtudiant, string dossier) { try { //Auto-Enregistrement // string CheminFichierRN = "c:\\delibes\\" + nomEtudiant; //le @ permet de ne pas devoir échapper donc \ au lieu de \\ classeurRN.SaveAs(@"c:\delibes\"+dossier+"\\"+ nomEtudiant + ".xls", ExcelRN.XlFileFormat.xlExcel7, M, M, false, false, ExcelRN.XlSaveAsAccessMode.xlNoChange, M, M, M, M, M); classeurRN.Close(true, "c:\\delibes\\" + nomEtudiant + ".xls", M); //MessageBox.Show(appliRN.ToString); }
nomEtudiant contient le nom de l'étudiant comme par exemple Dupont Aline et dossier contient RN_BA1
Le sous dossier RN_BA1 existe dans le dossier delibes.
Je vous remercie d'avance pour votre aide.
beegees
Partager