Meilleur auteur de réponses
Version d'Access, Word, Excel

Question
-
Réponses
Toutes les réponses
-
Bonjour Salva,
Le plus simple est peut-être d'utiliser Interop :
Imports Microsoft.Office.Interop Dim newApp As New Microsoft.Office.Interop.Excel.Application() MessageBox.Show("Excel version : " & newApp.Version)
Ensuite il est fort probable que les différents composants d'Office soit de la même version. Par contre certains ne sont peut être pas installés, notamment Access. Pour cela tu peux vérifier l'existence de la clé :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\MSACCESS.EXE
La valeur Path de cette clé est le chemin de l'application, qui donne aussi la version, ici :
C:\Program Files (x86)\Microsoft Office\Office14\
Par contre la version indiquée est la numérotation "interne" : Office 2010 = 14.0 ,dans les deux cas (Interop ou registre)
Cordialement, Jacques
- Modifié Jacques93 lundi 9 septembre 2013 10:50 Registre
- Proposé comme réponse Gilles TOURREAUModerator lundi 9 septembre 2013 22:28
-
Bonjour,
Merci pour votre réponse.
Je vais appliquer.
----------------------
Imports Microsoft.Office.Interop
Dim newApp AsNew Microsoft.Office.Interop.Excel.Application()
MessageBox.Show("Excel version : "& newApp.Version)-------------------------------------------------
Ça marche très bien !!!!
J'ai un problème, MS Access reste actif dans le gestionnaire de tache
J'ai ceci pour tenter de le fermer
newApp.Quit()
newApp = Nothing
Mais ça ne marche pas, comment faire pour fermer Access?
Cordialement
Salva
- Modifié sa56 mardi 10 septembre 2013 08:05
-
Ce ne semble pas systématique ( chez moi). Tu peux tenter :
newApp.DoCmd.Close() newApp.Quit()
ça semble efficace.
Sinon pour info, équivalence version / année Office, depuis 2000 :
9.0 : Office 2000
10.0 : Office XP / 2002
11.0 : Office 2003
12.0 : Office 2007
14.0 : Office 2010
15.0 : Office 2013Cordialement, Jacques