Salutations voyageurs du Web !

J'ai un soucis en VB.

A l'aide d'EPplus, je dois générer des fichiers Excel portant un nom, ainsi qu'un prénom, que je récupère en base de données, tout est stocké dans une liste sur mon application.

A l'aide d'une boucle For, je parcours cette liste, et pour chaque ligne de celle-ci, je dois créer mon fichier Excel. Voici le code de ma Fonction actuellement :

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
Function CreerExcel(ByVal val1 As String, ByVal val2 As String, ByVal val3 As String, ByVal val4 As String, ByVal val5 As String)
        'Ouverture de mon fichier Excel existant
        Dim ExistFile = Server.MapPath("~/Styles/Excel/fiche_evaluation.xlsx")
 
        Dim File = New FileInfo(ExistFile)
 
        'Définition du package EPplus
        Using package As New ExcelPackage(File)
            package.Load(New FileStream(ExistFile, FileMode.Open))
 
            'Selection de l'onglet de travail (Excel)
            Dim workSheet As ExcelWorksheet = package.Workbook.Worksheets("Feuil1")
            'Ecriture
            workSheet.Cells("B6").Value = val1
            workSheet.Cells("F6").Value = val2
            workSheet.Cells("C7").Value = val3
            workSheet.Cells("G7").Value = val4
            workSheet.Cells("C8").Value = val5
            'Enregistrement du nouveau fichier
            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
            Response.AddHeader("content-disposition", "attachment;  filename=Eval_" & val1 & "-" & val5 & ".xlsx")
            Response.BinaryWrite(package.GetAsByteArray())
            Response.Flush()
            Response.Clear()
        End Using
 
    End Function
Pour le moment, mon code entre dans la boucle, génère le premier fichier Excel, me permet de l'enregistrer et plante ensuite au second passage, à la ligne response.addheader

le serveur ne peut pas ajouter l'en-tête après l'envoi des en-têtes http.
En utilisant Response.End() au lieu de Response.clear(), tout se termine une fois le programme sur cette ligne ...

Une idée ?