2010-08-30 3 views
2

Est-il possible d'insérer une macro existante dans un fichier Excel existant sans utiliser la bibliothèque Excel? J'ai besoin de cela pour définir l'Excel pour imprimer le livre de travail entier. Je ne peux pas utiliser la bibliothèque Excel car il sera fait en ligne dans le serveur où l'installation d'Excel n'est pas possible. Je peux cependant utiliser le codage C# .net. J'utilise NPOI pour générer l'Excel.Comment insérer une macro dans un fichier Excel sans utiliser la bibliothèque COM Excel

la macro est donnée ci-dessous

Private Sub Workbook_BeforePrint(Cancel As Boolean) 
If printed = False Then 
Cancel = True 
printed = True 
ActiveWorkbook.PrintOut 
End If 
End Sub 

Répondre

0

serait une approche différente pour convertir le fichier Excel au format PDF puis imprimer le pdf. Il y a une bibliothèque pour la conversion qui semble avoir une bonne réputation:

http://www.aspose.com/

La seule autre façon reconnue pour manipuler Excel est avec les fournisseurs OLEDB ou ACE, mais ils ne donnent pas accès macro pour autant que je suis conscient.

Si vous étiez en mesure de faire référence à la dll d'Excel, voici un article MSDN décrivant comment injecter une macro:

http://support.microsoft.com/kb/303871

Questions connexes