Bonjour,
J'ai crée un formulaire qui incrémente un tableau excel. QUand je clique sur une ligne du tableau excel, le formulaire de modification apparait, juste en sélectionnant une ligne. Mais je voudrais que cela se fasse avec un double click sur la ligne. Voici le code vba que j'ai crée . Pourriez-vous m'indiquer comment faire pour que cela ne soit plus "selection change" mais "before double click" ?
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'On enclenche l'ouverture d'un formulaire uniquement sur la zone de sélection
If Not Intersect(Target, Range("A10:BF5000")) Is Nothing And Range("A" & Target.Row).Value <> Empty Then
'On récupère le numéro de ligne de la sélection active
Feuil4.Range("AG2").Value = Target.Row
'On enclenche l'ouverture d'un formulaire de modification
UserFormDEmodification.Show
End If
Je voudrais garder la selection change pour ouvrir mes fichiers PDF, c'est pourquoi je souhaite un double click pour ouvrir mon formulaire de modification.
Bonjour
Et quel code as-tu écrit ?
L'instruction Cancel = true a pour seule vocation d'inhiber le menu normalement affiché par cet évènement.
Elle ne t'affranchit pas de l'instruction nécessaire d'affichage de ton Userform.
J'ai écrit ceci, mais le double click fonctionne que sur une ligne et moi je voudrais que cela se produise si je vais sur n'importe quelle ligne
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
'On enclenche l'ouverture d'un formulaire uniquement sur la zone de sélection
If Not Intersect(Target, Range("$A$10:$BF$5000")) Is Nothing And Range("A" & Target.Row).Value <> Empty Then
'On récupère le numéro de ligne de la sélection active
Feuil4.Range("AG2").Value = Target.Row
'On enclenche l'ouverture d'un formulaire de modification
UserFormDEmodification.Show
End If
End Sub
Oui une usine à gaz.... Mais je me suis mise à la VBA depuis moins de 10 jours et j'ai pas mal galéré pour faire mon fichier.... J'aurais préféré faire ma base sur access mais ma boite n'a pas access. Alors je me suis lancée sur VBA. ET je galère, je tatonne...
'Double clic sur une ligne de la feuille pour affiche le formulaire lié
Cancel = True
If Not Intersect(Target, [Tableau2]) Is Nothing And Target.Count = 1 Then
UserFormDEmodification.Show
End If