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 :

Renseigné un textbox par une sélection de la souris


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut Renseigné un textbox par une sélection de la souris
    Bonjour à vous,

    Pour le moment, j'utilise un module sur un fichier que je voudrais faire partagé à tous mes classeurs.

    Aujourd'hui, sur un classeur, j'ai un Userform et sur ma feuille j'ai installé ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If UF1.Visible = False Then GoTo fin1
     
    UF1.TextBox5 = Application.Subtotal(109, Selection)
     
    fin1:
    End Sub
    Sur ce Classeur ça fonctionne très bien. Le but est que lorsque je sélectionne quelques cellules avec ma souris je retrouve le total dans le textbox5.

    Mais lorsque je fait partagé ce petit UF ds tout mes classeurs. Comment puis-je avoir ce même résultat sans utilisé un code sur chaque feuille. J'ais beau à cherché dans les forum, mais je ne trouve pas.
    En gros, je voudrais faire glissé ma souris et que ce textbox soit renseigné par la somme des cellule sélectionné, mais je ne voudrais pas pas mettre de code dans les feuille. Info: l'UF est en showmodal False !

    Merci à vous.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    97
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 97
    Points : 135
    Points
    135
    Par défaut
    Salut Jijie,

    Je t'ai bidouillé un truc, qui devrait te satisfaire.

    La solution à ton problème réside dans le fait qu'il faut programmer la somme via le formulaire ou une fonction dans un module, et pas à partir des feuilles excel.
    J'ai donc créé une variable global shNom, qui permet de connaître le nom de la feuille quand on ouvre le formulaire (j'ai mis un raccourci pour l'ouvrir : Ctrl+N)

    Ensuite dans ma fonction j'ai fait une boucle pour faire la somme. Si tu as une solution plus élégante, ne te gêne pas pour remplacer tout çà.

    Voilà, j'espère que çà te convient.

    PS : Il faut passer la souris sur le formulaire pour déclencher la fonction. J'ai rien trouvé de mieux.
    Fichiers attachés Fichiers attachés

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    Merci Touffe 54 de t'intéressé à mon problème.

    Je pense que tu me mets sur le bon chemin, mais ce n'set pas au point !
    ça ne me donne pas la somme ds le textbox: cry:

    Je regarde ça en fin de soirée! A très bientôt !

    Jijie

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    Re salut à tous,

    Touffe54: j'ai essayer ton fichier, enfin de compte ça fonctionne, mais je pense que cette solution serait plus simple : il faut un userform (en showmodal false), un textbox et voila le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    TextBox1 = Application.Subtotal(109, Selection)
     
    End Sub
    Le résultat est le même que ton fichier, mais ta façon est plutôt intéressante!

    Par contre il faudrait que l'on trouve un système ou le textbox soit le miroir de la sélection. Il faudrait que l'on ne soit pas obligé de passer avec la souris sur l'user pour alimenter le textbox!

    Donc à suivre et merci !

    jijie

    Re Bonjour,

    Je reformule ma question de façon différente!

    Est-il possible ds un Uf de savoir si une modification se fait dans la feuille active?

    jijie

  5. #5
    Membre habitué
    Homme Profil pro
    Consultant comptable
    Inscrit en
    Mai 2011
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant comptable

    Informations forums :
    Inscription : Mai 2011
    Messages : 137
    Points : 160
    Points
    160
    Par défaut
    Place ce code dans le thisworkbook, et utilise le programme de Touffe54 (que je trouve tres bien foutu)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    UFSTot.TextBox1 = STot(selection)
    End Sub

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    Re Bonjour à vous,

    Bravo pour la complémentarité!! 9a fonctionne super bien!

    Par contre, je sais que je suis un peu difficile, mais comme je souhaite partagé cette macro à plusieurs fichiers, donc une macro partagé à tous mes classeurs le code dans le thisworkbook n'est pas pris en compte!

    Mais merci ds les fichiers fréquents il faut l’installer directement dessus ! enfin toute la macro !

    Mais je cherche encore!

    a+

Discussions similaires

  1. [AC-2010] Critere d'une requete dynamique croisée par une sélection multiple
    Par docjo dans le forum Requêtes et SQL.
    Réponses: 13
    Dernier message: 10/03/2014, 12h58
  2. Réponses: 2
    Dernier message: 07/05/2012, 13h11
  3. Réponses: 1
    Dernier message: 23/10/2009, 18h49
  4. Réponses: 3
    Dernier message: 10/05/2008, 12h55
  5. remplir textbox par une requete
    Par mawkli dans le forum ASP.NET
    Réponses: 9
    Dernier message: 23/05/2007, 16h01

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