Je regarde ce morceau de code que j'ai obtenu de here parce que je voudrais l'utiliser. Le problème est, j'ai utilisé 2003 pour créer le fichier "test.xls", mais quand je cours ce code, il ouvre en 2007. Y at-il un moyen de forcer l'ouverture dans une version Excel spécifique plutôt que par défaut?VB ouvrir une version Excel spécifique lorsque deux sont installés
GoSub, GuiOpen
pweb := COM_AtlAxCreateControl(WinExist(), A_Temp . "\test.xls")
pxlb := COM_Invoke(pweb, "Document") ; Excel Workbook
pxls := COM_Invoke(pxlb, "Worksheets", 1) ; Excel Worksheet
Return
GuiOpen:
Gui, +Resize +LastFound
Gui, Show, w800 h600 Center, Excel
COM_AtlAxWinInit()
Return
GuiClose:
Gui, Destroy
COM_Invoke(pxlb, "Save")
COM_Release(pxls)
COM_Release(pxlb)
COM_Release(pweb)
COM_AtlAxWinTerm()
ExitApp
L'extension est affectée correctement, si je double-clique sur le fichier qu'elle ouvre avec 2003 et quand je double-clique sur les fichiers xlsx qu'ils ouvrent avec 2007. C'est quand j'essaie de l'ouvrir par programmation qui provoque le problème. Ce n'est pas seulement avec les fichiers d'ouverture, si je veux créer un objet Excel.Application, il créera toujours un 2007, je ne peux pas l'obtenir pour ouvrir un objet Excel.Application en 2003. – Geoff