Bonjour,
Je viens vers vous, car après de multiple recherches ... il semblerait que je sois la seule à avoir ce problème
Je souhaite remplir un fichier Excel existant puis l'afficher à l'utilisateur. Le processus fonctionne parfaitement, le fichier Excel est modifié correctement.
Cependant ... à l'ouverture du fichier Excel j'ai le message d'erreur suivant :
Voici le code :
J'ai supprimé la requête qui est énorme et qui n'apporte rien à la compréhension puisque cette partie fonctionne.
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78 Protected Sub Export_Europe(ByVal code_fournisseur As String, ByVal libelle_fournisseur As String, ByVal liste_articles As StringCollection) Dim fileVar As FileInfo Dim wbExcel As ExcelWorksheet Dim package As ExcelPackage Dim dt As DataTable = New DataTable Dim i As Integer Dim matricePath As String = CHEMIN_DOCS_ARTICLE & "Matrice\Matrice_Demande_Europe.xlsx" Dim folderPathExport As String = CHEMIN_DOCS_ARTICLE & "Temporary\" Dim fileNameExport As String = Year(Now) & "-" & Month(Now) & "-" & Day(Now) & "-ICR-FR-" & Session("initiales") & "-" & libelle_fournisseur.Replace(" ", "_") & ".xlsx" Dim filePathExport As String = folderPathExport & fileNameExport ' RECUPERATION DES DONNEES rqt = "la requete" Try connexion_SQLServer.Open() dr_SQLServer = cde_SQLServer.ExecuteReader() dt.Load(dr_SQLServer) dr_SQLServer.Close() Catch ex As Exception System.Diagnostics.Debug.WriteLine("Erreur Requete GridViewNeuf_RowCommand Update Demande Article") Me.ClientScript.RegisterStartupScript(Me.GetType(), "MessageBox", "alert('Erreur lors de la connexion à la base de données (6).');", True) If (connexion_SQLServer.State = ConnectionState.Open) Then connexion_SQLServer.Close() End If End Try ' ECRITURE DU FICHIER EXCEL If Dir(filePathExport, vbHidden) <> "" Then Kill(filePathExport) End If If Not Directory.Exists(folderPathExport) Then Directory.CreateDirectory(folderPathExport) End If FileCopy(matricePath, filePathExport) fileVar = New FileInfo(filePathExport) package = New ExcelPackage(fileVar) wbExcel = package.Workbook.Worksheets("Feuil1") i = 7 For Each dr As DataRow In dt.Rows wbExcel.Cells("A" & i).Value = "FR" wbExcel.Cells("B" & i).Value = code_fournisseur wbExcel.Cells("C" & i).Value = libelle_fournisseur wbExcel.Cells("D" & i).Value = dr(0) i = i + 1 Next package.Save() 'package.Dispose() 'Téléchargement Response.Clear() Response.ContentType = "application/octet-stream" 'Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" Response.AddHeader("Content-Disposition", "attachment; FileName=" + fileNameExport) Response.WriteFile(fileVar.FullName) 'Response.Flush() 'Response.End() 'If Dir(filePathExport, vbHidden) <> "" Then ' Kill(filePathExport) 'End If End Sub
Si vous avez une idée je prends ... parce que là, je suis à cours.
Information complémentaire :
Si je dé-commente le "Response.End", je n'ai pas le message d'erreur. Sauf que ça ne me convient pas puisque je dois je recharger la page ensuite.
Merci d'avance
Partager