macro avec double clic

  • Initiateur de la discussion Initiateur de la discussion stid59
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

stid59

Guest
Bonjour,

J'effectue un satge sous Excel et j'ai un petit soucis : j'aimerai que lorsque l'utilisateur double clic dans une cellule, un formulaire s'ouvre. Ensuite, il sélectionne une valeur dans une liste déroulante puis clic sur un bouton OK. Une fenetre s'ouvre lui demandant de confirmer son choix. S'il confirme, j'aimerai que la valeur sélectionnée dans la liste soit copiée/collée dans la cellule où l'utilisateur a double cliqué.

Voici le code VB que j'ai créé :


Private Sub BoutonOK_Click()
If MsgBox("Voulez-vous appliquer le motif " & ListBox1.Value & "?", vbYesNo) = vbNo Then
End
Else: Dim motif As String
motif = ListBox1.Value
motif.Select
motif.Copy
Range("G5").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Unload UserForm1
End If
End Sub

Private Sub UserForm_Initialize()
'remplissage de la zone de liste
With ListBox1
.AddItem "ALM"
.AddItem "ASA"
.AddItem "ASAI"
.AddItem "ATA"
.AddItem "ATM"
.AddItem "CA"
.AddItem "CFS"
.AddItem "CGM"
.AddItem "FORM"
.AddItem "GREV"
.AddItem "JAS"
.AddItem "MAT"
.AddItem "QS"
End With

'sélectionner le premier élément de la liste
ListBox1.ListIndex = 0

End Sub


Le problème se trouve dans la partie Else de Private Sub BoutonOK_Click(). Comment faire pour que la valeur sélectionnée dans la liste soit copiée/collée dans la cellule où l'utilisateur à double cliqué ?

MErci d'avance pour votre aide.
 
Re : macro avec double clic

Bonjour et bienvenu sur le forum Stid59,

stid59 à dit:
j'aimerai que lorsque l'utilisateur double clic dans une cellule(...)

stid59 à dit:
Comment faire pour que la valeur sélectionnée dans la liste soit copiée/collée dans la cellule où l'utilisateur à double cliqué ?

Il te faut mettre une macro commencant ainsi Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Sur la(es) feuille(s) concernée(s) (ou une seul fois, dans ThisWorkBook : à tester)

Bonne après midi
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

J
Réponses
3
Affichages
634
D
Réponses
2
Affichages
861
desexcel
D
P
Réponses
4
Affichages
1 K
P
A
Réponses
3
Affichages
609
aperobass
A
M
Réponses
1
Affichages
2 K
MaximeRoth
M
Retour