Probleme avec déclaration application excel lors du passage de VB2005.net à VB20

Messages postés
58
Date d'inscription
mercredi 15 mars 2006
Statut
Membre
Dernière intervention
14 janvier 2010
- - Dernière réponse : NHenry
Messages postés
14509
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 juillet 2019
- 24 juil. 2008 à 14:54
  Bonjour,
j'ai du passer a VB2009.net a cause d'un formatage.
J'avais crer ma source avec VB2005.net
Lors de l'ouverture de ma source avec VB2009.net il a mis a niveau la source, et depuis j'ai des message d'erreur avec excel.
Pouvez vous m'aider?
Merci

voici un morceau de ma source.

 Function search_values(ByVal tol As String, ByVal dia As Double, ByVal fichier As String) As ma_variable
        Dim tol_cherche As String
        Dim dia_cherche As Double
        Dim Etat_Excel As Boolean = 1
        Dim i, j As Integer
        Dim p() As Process
        Dim r As Process
        p = Process.GetProcessesByName("Excel") 'on fournit le nom du process en parametre
        If p.Length > 0 Then
            Etat_Excel = False
        End If
        Dim ClasseurXLS As New Microsoft.Office.Interop.Excel.Application
        ClasseurXLS = New Microsoft.Office.Interop.Excel.Application
        ClasseurXLS.Workbooks.Open(Application.StartupPath & "\Tolerances.xls")
        ClasseurXLS.Workbooks(1).Worksheets(fichier).Activate()
        tol_cherche = 0
        dia_cherche = 0
        i = 2
        j = 1
        'MsgBox(p.Length)
        Do While Not tol_cherche = tol
            i = i + 1
            tol_cherche = ClasseurXLS.Cells(i, 1).Value
        Loop
        Do While Not dia_cherche >= dia
            j = j + 1
            dia_cherche = ClasseurXLS.Cells(2, j).Value
        Loop
        search_values.sup = ClasseurXLS.Cells(i, j).value
        search_values.inf = ClasseurXLS.Cells(i + 1, j).value
        ClasseurXLS.ActiveWorkbook.Close(True)
        ClasseurXLS.Application.Quit()
        ClasseurXLS = Nothing
        If Etat_Excel Then   'efface tous les processus Excel seulement si il n'en avait pas d'existent avant le lancement de la function
            p = Process.GetProcessesByName("Excel") 'on fournit le nom du process en parametre
            For Each r In p 'puis on les kill tous
                r.CloseMainWindow()
                r.Kill()
            Next
        End If

    End Function

Voici le message d'erreur

Erreur    7    Type 'Microsoft.Office.Interop.Excel.Application' non défini.    C:\Documents and Settings\thomas\Bureau\Tolérance\Tolérance\Module\Module1.vb    54    32    Tolérance
Erreur    8    Type 'Microsoft.Office.Interop.Excel.Application' non défini.    C:\Documents and Settings\thomas\Bureau\Tolérance\Tolérance\Module\Module1.vb    55    27    Tolérance
Erreur    9    Type 'Microsoft.Office.Interop.Excel.Application' non défini.    C:\Documents and Settings\thomas\Bureau\Tolérance\Tolérance\Module\Module1.vb    101    28    Tolérance
Erreur    10    Type 'Microsoft.Office.Interop.Excel.Application' non défini.    C:\Documents and Settings\thomas\Bureau\Tolérance\Tolérance\Module\Module1.vb    102    27    Tolérance
Afficher la suite 

1 réponse

Messages postés
14509
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 juillet 2019
131
0
Merci
Bonjour,

Recréé la référence vers Excel, je pense que c'est là que le pb se situ.

http://nhen0039.chez-alice.fr/index.php
Commenter la réponse de NHenry