Bonjour,
Il se peut que votre problème soit dû à une incompatibilité entre la version de Microsoft.Office.Interop.Excel que vous utilisez et la version d’Excel installée sur votre machine. En effet, depuis la mise à jour d’Excel en décembre 2023, il y a eu des changements dans la bibliothèque Microsoft.Office.Interop.Excel qui peuvent causer des erreurs de cast ou de chargement12. Pour résoudre ce problème, vous pouvez essayer les solutions suivantes :
Vérifier que la référence à Microsoft.Office.Interop.Excel dans votre projet est bien à jour et correspond à la version d’Excel installée. Vous pouvez aussi essayer de réinstaller cette référence34.
Utiliser une méthode alternative pour créer l’objet Excel.Application, en utilisant la classe System.Type et la méthode System.Activator.CreateInstance5. Par exemple, vous pouvez remplacer la ligne :
Dim XlApp As Excel.Application = System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application")
par la ligne :
Dim excelType As Type = System.Type.GetTypeFromProgID("Excel.Application")
Dim XlApp As Excel.Application = CType(System.Activator.CreateInstance(excelType), Excel.Application)
Merci pour la réponse. J'ai corrigé mon problème avec ceci :
Imports Microsoft.Office.Interop Dim xlapp As New Microsoft.Office.Interop.Excel.Application() xlapp.Visible = True Dim xlbook As Microsoft.Office.Interop.Excel.Workbook = xlapp.Workbooks.Add(Microsoft.Office.Interop.Excel.XlSheetType.xlWorksheet) Dim xlsheet As Microsoft.Office.Interop.Excel.Worksheet intCount = xlApp.Workbooks.Count If intCount > 1 Then xlBook = xlApp.Workbooks(intCount) Else xlBook = xlApp.Workbooks(1) End If
Mes programmes fonctionnent tous maintenant. Merci!