Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1108 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Récupérer le numéro de la case contenant le bouton

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Récupérer le numéro de la case contenant le bouton

n°2244848
sarah1990
Posté le 04-12-2014 à 10:26:33  profilanswer
 

Bonjour à tous!  
 
Je suis débutante en VBA et j'aurai besoin de votre lumière sur un problème de bouton (contrôle de formulaire) ;-)
 
Je souhaite modifier la valeur d'une case en cliquant sur un bouton (j'ai déjà réalisé le code correspondant). J'ai cependant beaucoup de lignes sur les quelles je dois modifier les valeurs de ces cases.
Pour le moment je copie/colle la macro, change le numéro de ligne dans le code et applique cette macro au nouveau bouton.
 
De manière à ne pas devoir copier/coller la macro et renseigner systématiquement son nouveau nom dans les propriétés du bouton je voudrais rajouter une ligne de code qui récupérerait le numéro de la case sur laquelle le bouton est situé, et donc ainsi le numéro de ligne. Je n'aurais alors plus qu'à attribuer une variable à ce numéro de ligne et l'utiliser dans le reste de mon code de façon à ce que je n'ai plus qu'à copier/coller le bouton (avec la macro générique attribuée dessus), le positionner sur la ligne souhaitée et ... cliquer pour changer ma valeur!
 
Quelqu'un sait-il comment récupérér ce maudit numéro de ligne??
 
Merci d'avance et bonne journée!
 
PS : j'utilise Excel 2010

mood
Publicité
Posté le 04-12-2014 à 10:26:33  profilanswer
 

n°2244895
Marc L
Posté le 04-12-2014 à 13:33:45  profilanswer
 

 
           Bonjour !
 
           Le réflexe à avoir pour s'en sortir dans ce genre de cas lorsqu'une solution existe - et ne prenant pas plus de temps
           que cela a dû te prendre pour créér un compte sur ce forum puis rédiger ta problématique ! - est de consulter
           l'aide VBA intégrée à portée de clic : il suffit donc de parcourir les propriétés de l'objet concerné …
 
           Par exemple, si le bouton est un objet Shape, voir alors par exemple l'aide de sa propriété BottomRightCell,
           son nom étant assez explicite ! Et en lisant bien cette aide, tu verras aussi une autre propriété aussi parlante …
 
           Donc une fois l'objet cellule trouvée, ne reste plus qu'à en extraire sa ligne, là c'est le B-A-BA d'Excel
           mais cela peut servir à d'autres : utiliser la propriété Row
  

n°2244925
sarah1990
Posté le 04-12-2014 à 15:24:44  profilanswer
 

Bonjour Marc,
 
Si je vous pose la question c'est que je n'ai pas trouvé la réponse. Que ce soit dans l'aide d'Excel ou sur internet.
Le temps de poser ma question m'a en effet pris plus de temps que chacunes de ces recherches...
 
Personne n'a la réponse à ma question donc?
 
Cordialement


Message édité par sarah1990 le 04-12-2014 à 16:08:00
n°2244954
Marc L
Posté le 04-12-2014 à 17:36:01  profilanswer
 

 
           Tu en as pourtant une, suffit de la lire et d'appliquer ‼
 

n°2244955
sarah1990
Posté le 04-12-2014 à 17:42:00  profilanswer
 

Marc L a écrit :

 
           Tu en as pourtant une, suffit de la lire et d'appliquer ‼
 


Vous n'avez rien d'autre à faire que de polluer les forums M. Marc Levy?

n°2244956
Marc L
Posté le 04-12-2014 à 17:46:14  profilanswer
 

 
           Ce sont les profiteurs de votre genre qui polluent les forums ‼
 
           Commencer par lire les règles de ce forum comme celles de l'autre forum où a été doublée cette question !
 

n°2244958
lasnoufle
La seule et unique!
Posté le 04-12-2014 à 18:14:06  profilanswer
 

Salut

 

Pour ta question j'en sais rien, mais juste une idee qui pourrait peut-etre te simplifier la vie: pourquoi ne pas utiliser qu'un seul bouton, mais en modifiant ta macro pour qu'elle utilise la cellule en cours de selection pour faire son update? Du coup tu n'aurais qu'a selectionner la cellule a rafrachir puis cliquer sur l'unique bouton, que tu pourrais par exemple mettre en haut d'une feuille dans une ligne "freezee" qui apparait toujours. Au besoin, tu peux ajouter quelques verifs dans la macro pour t'assurer que ta cellule selectionnee est OK pour se faire rafraichir (ex: bonne colonne, etc.) histoire de pas "rafraichir" une mauvaise cellule par erreur/inattention. Tu pourrais aussi gerer dans la macro la selection d'une plage de cellules a rafrachir, etc.

 

A+


Message édité par lasnoufle le 04-12-2014 à 18:17:40

---------------
C'était vraiment très intéressant.
n°2244997
sarah1990
Posté le 05-12-2014 à 08:58:32  profilanswer
 

Bonjour lasnoufle!
 
Merci pour ton conseil, ça m'évitera en effet de modifier la macro à chaque création de ligne et de devoir dupliquer le bouton ;-)
Je vais faire comme ça pour le moment. Si je trouve la solution je vous en ferais part.
 
Bonne journée!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Récupérer le numéro de la case contenant le bouton

 

Sujets relatifs
Bouton réponse automatique d'email sur powerpointPowerShell - Récupérer le répertoire d'un fichier donné
optimisatio code switch / caseRécupérer TOUT les fichiers contenus dans TOUT les dossiers
Recuperer des fichiers txt d'un ftp sur access 2013Récupérer un texte entre HTML et PHP
[Excel] Afficher un bouton sous condition : RésoluComment modifier la fonction d'un bouton
Récupérer une liste de ville avec PHP/CurlRécupérer une variable PHP dans une shadowbox JS
Plus de sujets relatifs à : Récupérer le numéro de la case contenant le bouton


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR