IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Test de la version Office


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 40
    Points : 47
    Points
    47
    Par défaut Test de la version Office
    Salut à tous !!!
    J'ai développé une petite application en Visual Basic, qui utilise Word pour créer des rapports de résultats.
    Le problème c'est que, en fonction de la version de Office installée, je n'utilise pas exactement le même code (merci Microsoft... ).
    J'aimerai donc inclure dans le fichier Setup (crée avec Inno Setup) un test pour savoir quelle version d'Office est présente sur le poste, et ainsi installer les bons fichiers.

    Je pense qu'il faut aller voir dans la base de registre, mais je ne sais pas où chercher... Quelqun saurait-il me dire si cette opération est possible, et comment procéder??

    Merci d'avance,

    Tibaldus

  2. #2
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,
    Citation Envoyé par Tibaldus Voir le message
    Le problème c'est que, en fonction de la version de Office installée, je n'utilise pas exactement le même code (merci Microsoft... ).
    Pourrais-tu donner plus de détails ? voire même un exemple de code qui fonctionne sur une version et son équivalent pour une autre version.


  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 40
    Points : 47
    Points
    47
    Par défaut
    Là tout de suite j'ai pas toutes les versions sur mon poste. C'est pas grand chose,... des fonctions qui ne fonctionnent plus, des mises en pages quelques peu différentes... ça serait long de tout expliciter!
    Celà dit, je pense pas que ça puisse aider à répondre à mon problème... Ce qui m'interesse surtout, c'est comment aller chercher la version d'office.

    A plus,

    Tibaldus

  4. #4
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Utilises la propriété Version de l'objet Application

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Bonjour,

    J'ouvrirais personnellement la clé (de la BDR) :

    HKEY_CURRENT_USER\Software\Microsoft\Microsoft Office

    et lirais la 1ère sous-clé.

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Points : 42 925
    Points
    42 925
    Par défaut
    Citation Envoyé par ucfoutu Voir le message
    Bonjour,

    J'ouvrirais personnellement la clé (de la BDR) :

    HKEY_CURRENT_USER\Software\Microsoft\Microsoft Office

    et lirais la 1ère sous-clé.
    Il est plus facile d'utiliser

    Application.Version que d'ouvrir la BDR !

    Pour Word 2007 => 12.0

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Certes,

    Encore faut-il :

    1) pouvoir ouvrir un document
    2) qie l'on puisse exécuter cette commande

    Travailler à posteriori n'est pas toujours la solution...... Il peut arriver que ce soit déjà trop tard...

    Je rappelle ici (en rouge) l'essentiel de la demande :

    J'ai développé une petite application en Visual Basic, qui utilise Word pour créer des rapports de résultats.
    Le problème c'est que, en fonction de la version de Office installée, je n'utilise pas exactement le même code (merci Microsoft... ).
    J'aimerai donc inclure dans le fichier Setup (crée avec Inno Setup) un test pour savoir quelle version d'Office est présente sur le poste, et ainsi installer les bons fichers.
    Il est donc ici demandé de pouvoir déterminer cette version lors même de l'exécution d'un Setup.exe de VB (et pas lors de l'ouverture d'un fichier MsOffice...

    Aurais-je lu trop vite ?
    Que l'on me pende, si tel est le cas !

  8. #8
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Points : 42 925
    Points
    42 925
    Par défaut
    Il n'est important de connaître les fichiers que si tu utilises des bibliothèques.

    Un code dans Word reste dans Word et Application.Version fonctionne quoi qu'il se passe.

    C'est beau de dire qu'il faut ouvrir la BDR, tu n'explique pas comment ni ne lui donne de lien.
    En plus, si tu fais du latebinding, c'est encore plus facile.

  9. #9
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    on peut aussi considérer la génération de l'objet application en LateBinding
    (no problemo)
    Et, en fonction de ObjetApplication.Version, appeler une classe plutôt qu'une autre... ou même faire une classequi utilise une variable publique déclarée au démarrage de l'application, qui reprend la version,et utiliser en permanence cette variable.

    Ca marche bien, je pense... non ?

  10. #10
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Re,

    1) C'est depuis VB (il a posté dans la mauvaise section ) qu'il doit ouvrir la BDR, pas depuis MsOffice (son programme est un programme VB, pas VBA, et son Setup l'est également.
    2) Ce qu'il faut pour lire/écrire/manipuler la base de registre (sources et exemples) ne manque absolument pas dans la section VB ..... (c'est plus que complet)...

    Rappel (à nouveau) : il installe les fichiers adéquats lors du Setup (c'est à dire lors de l'exécution du fichier d'installation de son application).

    Et de là à ce que, en plus, il pilote depuis VB des applications VBA, ma foi ... il n'y a qu'un tout petit pas ...

    Mais laissons-le nous dire ....... ce sera bien...

  11. #11
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Points : 42 925
    Points
    42 925
    Par défaut
    Citation Envoyé par ucfoutu Voir le message
    Re,

    1) C'est depuis VB (il a posté dans la mauvaise section ) qu'il doit ouvrir la BDR, pas depuis MsOffice (son programme est un programme VB, pas VBA, et son Setup l'est également.
    2) Ce qu'il faut pour lire/écrire/manipuler la base de registre (sources et exemples) ne manque absolument pas dans la section VB ..... (c'est plus que complet)...

    Rappel (à nouveau) : il installe les fichiers adéquats lors du Setup (c'est à dire lors de l'exécution du fichier d'installation de son application).

    Et de là à ce que, en plus, il pilote depuis VB des applications VBA, ma foi ... il n'y a qu'un tout petit pas ...

    Mis laissons-le nous dire ....
    Mais c'est pour une appli Office existante. Donc il suffit de faire du latebinding.

  12. #12
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Citation Envoyé par ucfoutu Voir le message
    Re,

    1) C'est depuis VB (il a posté dans la mauvaise section ) qu'il doit ouvrir la BDR, pas depuis MsOffice (son programme est un programme VB, pas VBA, et son Setup l'est également.
    Je croyais qu'en VB aussi on faisait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dim monAppli as Object
    Set monAppli = CreateObject("Word.Application")

    Car, après tout, il y a bien la bibliothèque VBA dans tout projet VBA...

  13. #13
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    S'il "pilote", son code de pilotage est écrit dans son application VB.

    1) Je crois vraiment qu'il convient que le demandeur éclaicisse ces points.

    2) Ton dernier message, Maxence Hubiche, ne peut s'appliquer au setup.exe qui, lui, n'est certes pas l'exe de son appli ...!!!

  14. #14
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Non pas au setup.exe
    Mais à son programme en lui-même, ce qui lui évite le développement de fichiers multiples à charger, plus le développement d'un setup un peu particulier, et qui garantit qui plus est une évolutivité des plus intéressantes

Discussions similaires

  1. Réponses: 4
    Dernier message: 20/02/2009, 14h44
  2. Test sur la Version PHP
    Par LePueblo dans le forum Langage
    Réponses: 4
    Dernier message: 16/01/2009, 13h57
  3. Compiler pour une autre version Office
    Par Pascal Lob dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 09/12/2008, 18h22
  4. version office (automation) et c#
    Par rdh123 dans le forum C#
    Réponses: 4
    Dernier message: 12/04/2008, 08h57
  5. Réponses: 4
    Dernier message: 08/11/2005, 21h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo