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 :

Erreur 91 sur VBA [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de funckfot
    Profil pro
    Étudiant
    Inscrit en
    Mars 2006
    Messages
    221
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 221
    Par défaut Erreur 91 sur VBA
    Bonjour

    Je suis en train de créer mon propre menu sur Excel via VBA.
    Je suis en train de m'inspirer de ce tutoriels pour réaliser mon menu
    http://fring.developpez.com/vba/excel/barremenu/

    Cependant, lors de l'exécution de ma macro, j'ai l'erreur N°91 -> "Variable objet ou variable bloc With non définie (erreur 91)"

    Or je ne suis qu'au balbutiement de mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
         Dim Cbar As CommandBar
         'creation de la barre de menus
         Set Cbar = CommandBars.Add(Name:="MaBarrePopup", Position:=msoBarPopup, temporary:=True)
    Le programme plante directement sur la ligne "Set Cbar = CommandBars.Add(Name:="MaBarrePopup", Position:=msoBarPopup, temporary:=True)"

    J'avoue que je suis un peu dépassé. je suis juste a l'init et j'ai déjà une erreur d'init...

    merci de votre soutient

  2. #2
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 113
    Par défaut
    Salut
    J'ai eu a créer une Cbar, voila le code que j'avais employé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    On Error Resume Next
    'On supprime un eventuel reste d'un fichier passé
    CommandBars("Popup_Prepa").Delete
    On Error GoTo 0
    'création de la barre de menu de type Popup
    Set Cbar = CommandBars.Add(Name:="Popup_Prepa", Position:=msoBarPopup, temporary:=True)
    Il est identique au tien, je m'assure juste de supprimer une barre existante.

    Essai de regarder les différentes variables pour savoir quel mot n'est pas reconnu dans ton code, chez moi ton code s’exécute parfaitement. enfin si le code se lance... par ce que ça se bloque peut être bien dés le lancement? la zone jaune pointe ta ligne ou pointe Sub Macro().

    Quelle version d'Excel utilises tu?

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  3. #3
    Membre expérimenté Avatar de funckfot
    Profil pro
    Étudiant
    Inscrit en
    Mars 2006
    Messages
    221
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 221
    Par défaut
    J'ai excel 2007
    J'ai essayé ton code. en version 2003 et 2007. Pas moyen! ça ne marche pas!

    Mais j'ai peu être oublier un truc. Je sais pas une référence ou un truc du genre, car là je bute...


    je sens l'erreur de débutant arriver

  4. #4
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 113
    Par défaut
    Salut
    Fais suivre ton fichier, mais je vois pas ce que tu as put oublier...
    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  5. #5
    Membre expérimenté Avatar de funckfot
    Profil pro
    Étudiant
    Inscrit en
    Mars 2006
    Messages
    221
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 221
    Par défaut
    Voici mon fichier...

    si tu vois le problème

    sinon passe moi en un qui marche sTP
    Fichiers attachés Fichiers attachés

  6. #6
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 113
    Par défaut
    Salut

    Alors ne me demande pas pourquoi... Enfin si j'ai une petite idée. Lorsque tu déclares une variable dans un feuille ou dans un worksheet, celui ci n'est accessible qu'à partir de la feuille ou du worksheet en question.
    Si tu veux le rendre accessible de tous, y compris de l'application elle même, il faut travailler dans un Module, les variables déclarées dans un Module ont une porté plus grande (voir des tutoriel au sujet des déclarations de variables). Il semble donc logique, pour un menu qui sera placé au niveau Application, de travailler dans un module.

    Il faut que tu mettes le code de création de ta barre dans un module donc.
    Et dans l’évènement Open de ton worksheet au lieu d'avoir ton code, tu fais appelle à la procédure de création qui se trouve dans le Module.

    Modules1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Option Explicit 'te force a declarer tes varibales
     
    Sub CreationBarre()
    Dim CBar As CommandBar
     
        'Call verificationFichier
        On Error Resume Next
        'On supprime un eventuel reste d'un fichier passé
        CommandBars("Popup_Prepa").Delete
        On Error GoTo 0
        'création de la barre de menu de type Popup
        Set Cbar = CommandBars.Add(Name:="Popup_Prepa", Position:=msoBarPopup, temporary:=True)
    End Sub
    Et dans ton ThisWorkbook:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Workbook_Open()
    'On fait appelle à la sub de création
    CreationBarre
     
    End Sub
    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  7. #7
    Membre Expert Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Par défaut
    bonjour,

    met ton code dans un module et appelle la procedure via l'événement open
    cela devrais fonctionner

    edit : sorry , le temps que je poste.... je me suis fait griller

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

Discussions similaires

  1. [AC-2007] Erreur 462 sur du VBA Excel une fois sur deux
    Par lio33 dans le forum VBA Access
    Réponses: 6
    Dernier message: 16/04/2013, 09h41
  2. [XL-2007] [VBA-Excel] Erreur 1004 sur utilisation de Cells
    Par hergios dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/07/2012, 12h55
  3. [XL-2010] Erreur 1004 sur ligne de code vba QueryTable.refresh
    Par Darkfiend dans le forum Excel
    Réponses: 0
    Dernier message: 17/01/2012, 12h08
  4. [AC-2003] erreur sur vba
    Par alain136 dans le forum VBA Access
    Réponses: 2
    Dernier message: 17/10/2011, 11h31
  5. [AC-2002] Erreur 91 sur code VBA
    Par volganne dans le forum VBA Access
    Réponses: 6
    Dernier message: 02/09/2010, 14h03

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