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 :

Revenir sur la cellule sélectionné après exécution d'une macro


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 123
    Par défaut Revenir sur la cellule sélectionné après exécution d'une macro
    Bonjour, voici mon problème je un classeur excel avec 12 feuilles une pour chaque mois de l'anné. J'ai sur chaque feuille des boutons de commande qui qui font référence à des documents word incorporer dans la première feuille. Lorsque je me trouve sur la feuille 3 (Mars) et que je click sur mon bouton de commande pour ouvrir mon doc word, mon curseur se déplace sur la première feuille (Janvier).

    Ce que je cherche c'est le code qui me permet de resté sur la cellule ou je me trouve en ce moment et non de de me diriger vers la première feuille.

    voici mom code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("Janvier").OLEObjects(7).Verb
    Merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Comme je n'ai pas compris, enfin pas tout, peux-tu dire ce que fait cette ligne
    Worksheets("Janvier").OLEObjects(7).Verb
    A+

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 123
    Par défaut
    J'ai affecté cette ligne a un bouton de commande qui sert à ouvrir un document word incorporer dans la feuille (Janvier)

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    J'étais intrigué par le chiffre 7... : Ce n'est donc pas le N° du mois.
    Citation Envoyé par Tu
    Ce que je cherche c'est le code qui me permet de resté sur la cellule ou je me trouve en ce moment
    Parce que quand tu cliques sûr le bouton, tu es dans une cellule et tu veux retourner sur cette cellule.
    SilkyRoad ou bbil ont peut-être la solution.. Quant à moi, je n'en vois qu'une.
    Quand tu te places sur le bouton, tu n'es plus dans la feuille de calculs. Donc, tu dois mémoriser le nom de la feuille et l'adresse de la cellule au moment où tu "quittes" la feuille.
    Je ferais ça dans Worksheet_Deactivate et je placerais ça dans une cellule que tu n'utilises pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Worksheet_Deactivate()
    Cells(NoLigne, NoColonne).value = activesheet.name
    Cells(NoLigne+1, NoColonne).value = ActiveCell.Address
    End Sub
    Dans le code du bouton, pour te replacer dans la bonne feuille et dans la bonne cellule, récupère le nom de la feuille et l'adresse de la cellule là où tu les as mis et active la feuille et sélectionne la cellule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Worksheets(NomDeLaFeuille).activate
    Range(Ladresse).select
    Juste une idée
    A+
    Cells

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 123
    Par défaut
    Merci pour ton aide, il y a une autre embuche, toute mes feuilles ont les mêmes boutons.

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Bonjour

    Je pense que ton code serait à revoir, car tu as sûrement des sélections de cellules dans le code de ton userform (boutons ou autres) alors que tu peux manipuler des cellules sans avoir à les sélectionner d'abord.

    Si maintenant, ton code doit absolument (ce dont je doute) modifier la sélection active et que tu veux revenir à cette sélection, le plus simple est d'utiliser ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Dim PlageActive As Range
     
    Private Sub UserForm_Activate()
        Set PlageActive = ActiveCell
    End Sub
     
    Private Sub UserForm_Terminate()
        ' Sélection de la feuille si la feuille de départ n'est plus active
        PlageActive.Parent.Select
        ' Sélection de la cellule
        PlageActive.Activate
    End Sub
    Ok?
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

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

Discussions similaires

  1. [XL-2010] Reprise d'une macro 1 après exécution d'une macro 2 appelée par la macro 1
    Par julio44 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/07/2014, 12h32
  2. [XL-2013] Modifier cellule manuellement durant exécution d'une macro
    Par oieretxe dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 10/01/2014, 00h25
  3. Réponses: 2
    Dernier message: 05/02/2013, 15h14
  4. revenir sur la page courante après une action
    Par Altenide dans le forum Struts 2
    Réponses: 8
    Dernier message: 08/04/2010, 11h41
  5. [Requête]Aide sur méssage lors de l'exécution d'une Req.MàJ
    Par nomade333 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 05/04/2007, 22h26

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