Etendre une commande VBA sur une même feuille
Bonjour a tous et toutes,
J'ai besoin d'aide pour dupliquer une commande VBA que j'ai faite.
J'ai un petit calcul qui se fait automatiquement, et ma macro s'active lorsque je clique sur une cellule prédéfinie.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address(0, 0) = "D2" Then Application.Run "essai"
End Sub
Sub essai()
Dim nombre_de_oui As Integer
Dim nombre_de_reponses As Integer
Dim taux_satisfaction As Single
nombre_de_reponses = Range("b2").Value
nombre_de_oui = InputBox("nombre de oui")
taux_satisfaction = (nombre_de_oui / nombre_de_reponses)
MsgBox (taux_satisfaction)
Range("c2").Value = nombre_de_oui
Range("d2").Value = taux_satisfaction
End Sub
Pour l'instant c'est la case D2 qui lance ma macro mais souhaite pouvoir faire la même chose sur plusieurs cellules (D3;D4;D5 etc...)
merci par avance de votre aide.
bonne journée à tous et toutes
Bonjour dekn et
Une petite présentation ICI serait la bienvenue
Si vous ne l'avez pas encore fait, je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER]
qui vous aidera dans vos demandes et réponses sur ce forum
Concernant votre problématique, il faut utiliser INTERSECT()
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("D2:D7"), Target) Is Nothing Then Call Essai
End Sub@+
Merci beaucoup, cela fonctionne.
Est ce que je dois utiliser intersect pour la suite de mon tableau ?
Car maintenant, il faut qu'en fonction de la cellule qui active la macro, le code comprennes qu'il faut prendre et restituer les données sur cette même ligne.
Par ex: si je clique sur D3, la macro s'active, mais il faut prendre les données de la case C3 et restituer le résultat en D3
Merci pour votre aide précieuse !