Bonjour à tous, j'ai l'erreur suivante en voulant avec vb.net sous visual studio 2022, lire des données excel 2010.

"System.InvalidCastException*: 'Impossible d'effectuer un cast d'un objet COM de type 'Microsoft.Office.Interop.Excel.WorksheetClass' en type d'interface 'Microsoft.Office.Interop.Excel._Worksheet'. Cette opération a échoué, car l'appel QueryInterface sur le composant COM pour l'interface avec l'IID '{000208D8-0000-0000-C000-000000000046}' a échoué en raison de l'erreur suivante*: Cette interface n’est pas prise en charge (Exception de HRESULT : 0x80004002 (E_NOINTERFACE)).'"

Voiçi le code des procédures :

le code du module avec les variables globales :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Excel
Module Module1
        Public DateJour As Date
        Public DateMax As Date
        Public oApp As New Excel.Application
        Public oWkb = oApp.Workbooks.Add
        Public oWSht As New Excel.Worksheet 'feuille de calcul
        Public chemin As String = "C:\Users\Documents\Excel\Pass.xlsx"
        Public onglet As String = "Utilisés"
        Public lRow As Long 
    End Module

Le code du formulaire avec un bouton :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
Imports Microsoft.Office.Interop.Excel
 
Public Class Form1
    'Implements Worksheet
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        oWkb = oApp.Workbooks.Open(chemin)
        With oWSht
            lRow = .Cells(.Rows.Count, "A")
        End With
    End Sub
End Class
l'erreur est sur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
lRow = .Cells(.Rows.Count, "A")
J'ai regardé sur diverses discussions à ce sujet j'ai donc réparé puis désinstallé et re installé MS Office 2010 en vain.
A noter la solution est sous Framework .NET Framework 4.8 et sur une Windows Forms
Si quelqu'un a une idée...