J'ai un projet écrit en VB .NET dans lequel je prends l'entrée de l'utilisateur, ouvre un modèle Excel et y exécute une macro (vba) avec l'entrée du formulaire principal. Je peux faire tout cela sans problème en utilisant un chemin vers le template mais j'en ai besoin pour faire partie du projet quand je le publie. Ceci est mon code de version de chemin (code excès supprimé):Ajouter un classeur excel à l'application VB .NET
Imports Excel = Microsoft.Office.Interop.Excel
private sub OpenExcel()
Dim objApp As Object
Me.Hide()
objApp = CreateObject("Excel.Application")
objApp.WorkBooks.Open("ExampleWorkBook.xlsm")
objApp.visible = True
objApp.Run("MacroName", Var1, Var2)
Me.Close()
End Sub
J'ai trouvé this post mais il ne fonctionne pas, peut-être parce que mes modèles sont dans un dossier (qui est situé au même endroit que Form1.vb etc). Mes modèles doivent être séparés des autres fichiers afin qu'ils soient faciles à trouver. Si quelqu'un pouvait me fournir une solution/modifier le code d'un autre poste de telle manière que cela fonctionne, je serais très reconnaissant
J'utilise Visual Studio 2017 et Excel 2010 code de poste lié:
Dim filename as String = My.Application.Info.DirectoryPath & System.IO.Path.DirectorySeparatorChar & "WorkbookName.xlsx"
Process.Start(filename)