Function Excel & VB.net

Résolu
cs_yaya60 Messages postés 16 Date d'inscription jeudi 18 mars 2004 Statut Membre Dernière intervention 27 janvier 2012 - 15 févr. 2010 à 10:38
cs_yaya60 Messages postés 16 Date d'inscription jeudi 18 mars 2004 Statut Membre Dernière intervention 27 janvier 2012 - 15 févr. 2010 à 15:58
Bonjour,

A partir d'un programme créés en VB.net 2008, je génére des rapports Excel 2003.
Je bute sur l'intégration des fonctions mathématiques d'Excel.

Voici un exemple:

[i]Imports Microsoft.Office.Interop

Dim calcul As Excel.WorksheetFunction
Dim debut As Excel.Range
Dim fin As Excel.Range
Dim resultat As Excel.Range

debut = CType(MyWorkSheet.Cells(1, 5), Excel.Range)
fin = CType(MyWorkSheet.Cells(1, 10), Excel.Range)
resultat = CType(MyWorkSheet.Cells(1, 15), Excel.Range)

resultat.Value = calcul.Sum(debut, fin) /i
mais à la derniere ligne, j'ai une erreur:
"La référence d'objet n'est pas définie à une instance d'un objet."
Et il n'est pas possible d'instancier "Calcul" ....

Quelqu'un à une idée ????

2 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
15 févr. 2010 à 11:14
Salut
As-tu bien déclarer une référence à Office.Excel dans ton projet ?
Comme le dit le message d'erreur, il manque la déclaration de l'application Excel sur laquelle repose les fonctions :
        Dim appExcel As Microsoft.Office.Interop.Excel.Application
        appExcel = New Microsoft.Office.Interop.Excel.Application
        MsgBox(appExcel.WorksheetFunction.Sum(1, 22))

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3