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

Macros et VBA Excel Discussion :

Code qui fonctionne lorsque exécuté dans un module, mais ne fonctionne pas dans la feuille ThisWorkbook


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 55
    Points : 43
    Points
    43
    Par défaut Code qui fonctionne lorsque exécuté dans un module, mais ne fonctionne pas dans la feuille ThisWorkbook
    Bonjour,
    J'ai un code que j'aimerais exécuter à l'ouverture de mon fichier Excel. J'ai donc déplacé mon code d'un module à la feuille ThisWorkbook. Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Private Sub Workbook_Open()
    fichier = "http://sharepoint.rr.ca/Shared Documents/Base de données - Mise à jour.xlsm"
    Application.DisplayAlerts = False
    Workbooks.Open Filename:=fichier
    Application.DisplayAlerts = True
     
    Windows("Base de données - Mise à jour.xlsm").Activate
    Sheets("Feuil1").Select
    Sheets("Feuil1").Copy Before:=Workbooks("Utilisation de la base de données.xlsm").Sheets(1)
     
    Application.DisplayAlerts = False
    Windows("Base de données - Mise à jour.xlsm").Close
    Application.DisplayAlerts = True
     
    Sheets("Feuil1").Name = Format(Date, "dd-mm-yyyy")
    DernierOnglet = ActiveWorksheet.Name
     
    End Sub
    Une fois déplacé, mon code qui s'exécutait parfaitement dans un module ne fonctionne plus. Il bloque à la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows("Base de données - Mise à jour.xlsm").Activate
    Avec le message d'erreur : Erreur d'exécution 9. L'indice n'appartient pas à la sélection.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,
    Tu utilises les méthodes activate

    Comment veux tu activer quoi que ce soit alors que ton fichier est en train de s'ouvrir et pas encore activité!

    Utilises des variables et bannis de ton vocabulaire les activate;select et autres sélection!

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    Merci. Je me cassais vraiment la tête pour rien.
    Finalement, j'ai appelé ma macro dans Workbook_Open et ça fonctionne très bien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_Open()
    Application.Run ("Portrait_Base_de_données_Automatique")
    End Sub

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

Discussions similaires

  1. [XL-2013] La macro ou le code ne s'exécute pas dans le module
    Par PPN83 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/10/2014, 16h31
  2. Barre de progression d'une macro qui n'est pas dans un module
    Par Boris_Gem dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/10/2010, 10h47
  3. [AC-2007] Code qui ne s'exécute pas
    Par Triad30 dans le forum VBA Access
    Réponses: 4
    Dernier message: 22/07/2010, 19h42
  4. [DOM] [setTimeout] Ne fonctionne pas dans un module
    Par bitardo dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 28/08/2007, 10h37
  5. Réponses: 2
    Dernier message: 16/08/2007, 09h48

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