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

VBA Access Discussion :

Ouvrir fichier Excel sans message d'avertissement de macros présentes


Sujet :

VBA Access

  1. #1
    Membre habitué
    Profil pro
    Développeur
    Inscrit en
    Août 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2006
    Messages : 94
    Points : 127
    Points
    127
    Par défaut Ouvrir fichier Excel sans message d'avertissement de macros présentes
    Salut a tous,

    une question sur l'ouverture d'un fichier Excel depuis un module d'access:

    Je commande l'ouverture d'un fichier Excel contenant des macros par le biais de la fonction GetObject :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim xlWb as Workbook
    set xlWb = GetObject("C:\monFichier.xls")
    De cette maniere, le fichier s'ouvre dans la session Excel existante, s'il en est une. Sinon, je commande une ouverture par la méthode CreateObject.

    En procédant de cette facon, le message d'avertissement de présence de macros apparait dans Excel (que je rende Excel visible ou non), et je dois choisir d'accepter les macros ou non.

    Ce message me gêne, je voudrais qu'il n'apparaisse pas. L'application Access étant destinée a une utilisation multi-poste, je ne souhaite pas intervenir dans le niveau de sécurité d'ouverture des fichiers Excel.

    Existe-t-il un moyen de faire en sorte que ce message n'apparaisse pas ?

    Remarque:
    Avec la méthode Workbook.Open, le message n'apparait pas, seulement cela lance forcément une nouvelle session Excel (et ca, ca me derange).

    Merci d'avance !

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    si tu fais un GetObject pour ouvrir un classeur, tu devrais pouvoir faire un GetObject pour récupérer l'instance Excel déjà ouverte et de là faire un xlApp.Workbooks.Open

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub TestExcel()
     
    Dim xlApp As Object
    Set xlApp = GetObject(, "Excel.Application")
    xlApp.workbooks.Open "H:\DEV\OFFICE\Addin\multi.xls"
     
    End Sub
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  3. #3
    Membre habitué
    Profil pro
    Développeur
    Inscrit en
    Août 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2006
    Messages : 94
    Points : 127
    Points
    127
    Par défaut
    Excellent c'est effectivement le plus pertinent des codes a mettre en place... et ca fonctionne a merveille désormais. Out les messages gênants !

    Merci Caféine

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] ADODB : se connecter à un fichier Excel sans l'ouvrir ?
    Par Monkey_D.Luffy dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/10/2010, 09h50
  2. ouvrir fichier VBS sans avertissement
    Par popofpopof dans le forum Sécurité
    Réponses: 10
    Dernier message: 30/09/2007, 23h24
  3. Réponses: 15
    Dernier message: 20/09/2007, 18h26
  4. Réponses: 7
    Dernier message: 24/08/2007, 14h29
  5. Ouvrir un fichier excel sans pouvoir le modifier
    Par snakejl dans le forum Langage
    Réponses: 6
    Dernier message: 09/06/2006, 11h46

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