[VBA] boucle

clara67

XLDnaute Nouveau
bonjour,
étant débutante en VBA ,j'ai un petit soucis avec une boucle .
l'action que je désire faire est :
quand je clique sur le bouton 33 , la valeur de la cellule a33 de la feuille 3 se reporte dans la case a1 de la feuille 1 .... j'espere etre clair .
mais je souhaite faire ca pour tous mes boutons..

pour un seul bouton voici ce que j'ai fait et qui marche bien :
pour le bouton n°33:
ds private sub commandbutton33_click()
feuil1.range("a1").end(xlup).offset(1,0).value = feuil3.range("a33").value


pour le bouton 34:
feuil1.range("a1").end(xlup).offset(1,0).value = feuil3.range("a34").value

et ceci jusqu'au bouton 77

si quelqu'un a une petit idée pour faire la boucle.. je l'en remercie d'avance
 
C

Compte Supprimé 979

Guest
Re : [VBA] boucle

Bonsoir Clara67, Davidc57

Clara, le suis un peu comme David, pourquoi autant de bouton !?

Sinon, tu trouveras ci-joint un exemple de ce que tu peux faire ;)

Chaque bouton est créé dans l'ordre et on attribue à chaque fois la macro "BtnClick".

Mon code récupère le nom du bouton avec son numéro et ainsi on peut en déduire la valeur à inscrire
Code:
Sub BtnClick()
  Dim LibBtn As String, NomBtn As String, NumBtn As Integer
  Dim Cel As Range
  ' Mémoriser la cellule sélectionnée
  Set Cel = Selection
  ' Récupérer le nom de l'objet appelant la procédure
  NomBtn = Application.Caller
  '
  ' Si on se base sur le texte du bouton
  ' Le sélectionner pour récupérer ses propriétés
  ActiveSheet.Shapes(NomBtn).Select
  ' Récupérer le texte du bouton
  LibBtn = Selection.Characters.Text
  
  ' Si on se base sur le nom du bouton
  'LibBtn = NomBtn
  
  ' Récupérer le numéro figurant dans le texte
  ' Un espace obligatoire en le texte et le numéro
  NumBtn = Right(LibBtn, Len(LibBtn) - InStrRev(LibBtn, " "))
  ' Inscrire la valeur en conséquence
  Feuil1.Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Value = Feuil3.Range("A" & NumBtn).Value
  ' Sélectionner de nouveau la cellule active
  Cel.Select
End Sub

A+
 

Pièces jointes

  • Clara67_BoutonEnBoucle.xls
    30 KB · Affichages: 80
Dernière modification par un modérateur:

mécano41

XLDnaute Accro
Re : [VBA] boucle

Bonjour,

Il y a peut-être mieux mais je ne vois que cela... Il te faudra recopier 44 fois le sub du bouton en changeant le repère...

Pas compris ton : feuil1.range("a1").end(xlup).offset(1,0).value....

Cordialement
 

Pièces jointes

  • Boutons.xls
    36 KB · Affichages: 65
  • Boutons.xls
    36 KB · Affichages: 80
  • Boutons.xls
    36 KB · Affichages: 78

Gael

XLDnaute Barbatruc
Re : [VBA] boucle

Bonsoir à tous,

Comme mes amis, je pense que tu vas finir par avoir la varicelle avec tous ces boutons:):)

Un exemple avec un code très simple et une liste qui permet de choisir la cellule à recopier.

@+

Gael
 

Pièces jointes

  • Clara_V1.xls
    30 KB · Affichages: 96
C

Compte Supprimé 979

Guest
Re : [VBA] boucle

Salut Mécano,

Bonjour,
Il y a peut-être mieux mais je ne vois que cela... Il te faudra recopier 44 fois le sub du bouton en changeant le repère...
Je ne comprends pas bien ta réponse :confused:

J'ai donné la possibilité justement, de ne pas faire de copier coller X fois
J'ai une sub pour X boutons

Il me semble qu'il faudrait parfois lire les réponses avant de poster les siennes, non !?

A+
 

mécano41

XLDnaute Accro
Re : [VBA] boucle

Salut Mécano,


Je ne comprends pas bien ta réponse :confused:

J'ai donné la possibilité justement, de ne pas faire de copier coller X fois
J'ai une sub pour X boutons

Il me semble qu'il faudrait parfois lire les réponses avant de poster les siennes, non !?

A+

Tu as mal interprété... Dans mon message, je disais qu'il y avait peut-être mieux, sous-entendu : que ce que j'avais fait! et c'est bien le cas puisque ce que tu présentes est plus élaboré ! J'aurais peut-être dû être plus clair mais en tout cas , je n'ai pas pour habitude de faire des remarques de ce genre... :D

Je n'avais pas lu les autres messages parce qu'ils ne m'étaient pas encore parvenus. Il y a parfois un décalage important dans la mise à jour et le signalement et c'était le cas aujourd'hui...(il y a même des signalements qui ne me sont pas parvenus du tout) je n'en connais pas la raison...

Cordialement
 

Discussions similaires

Réponses
21
Affichages
471

Statistiques des forums

Discussions
312 764
Messages
2 091 862
Membres
105 083
dernier inscrit
Leoud76