Bonjour,

je fais face à un petit problème. Je souhaite exporter les données contenues dans une table contenant 13 millions de lignes dans un fichier Excel.
Dans ce classeur, il existe 3 feuilles, et chaque ligne lue dans la table est insérée dans la feuille correspondante en fonction d'un champ.

Le tout marche parfaitement, je gère également la volumétrie maximale d'une feuille Excel, enregistrant le fichier courant et en ouvrant un autre si besoin pour continuer l'exportation.

Techniquement, j'utilise un datareader sur ma table et ensuite un select sur le champ qui m'intéresse pour savoir dans quelle feuille insérer la ligne du datareader. Read. L'exécution est très chronophage, ça tourne à environ 2000 lignes à la minutes, ce qui pour 13 millions attendues est extrêmement long, il faudrait que cela prenne une dizaine d'heures environ.

Auriez vous des conseils sur la méthode à utiliser ou les optimisations à apporter ?

Par ailleurs, je souhaiterais faire en sorte que quand une exportation est lancée, il soit impossible à l'utilisateur de l'ordinateur d'ouvrir un autre classeur excel , car ceci fait planter mon application. Le double clic sur un classeur quelconque le fait s'ouvrir en utilisant l'instance d'excel que mon application a lancée.

Merci d'avance et bonne journée.