Bonjour,
(Problème lié au temps d'execution d'une macro; Débutant en la matière, désolé pour ce code à rallonge)
J'ai réalisé une macro afin d'ajouter un x dans des cellules lorsque l'on double clic dessus, jusque là pas de soucis.
Cependant j'ai d'autres opérations à réaliser
Lorsque la valeur x devient vraie :
D'un côté, la suppression d'un "Oui" et de l'autre l'ajout de "Non-Conforme"
Ce passage fonctionne correctement, rapidement
Lorsque la valeur x devient fausse :
Suppression de "Non-Conforme"'
Problème sur celui-ci, qui est bien trop long
Il y a t-il possibilité de l'optimiser afin de réduire le temps d'execution ?
Mon code (en 3 sub, j'imagine qui'il y a moyen de le réunir en 1 seul mais cela ne fonctionne pas quand j'essaie)
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("B5:B200")) Is Nothing Then: Exit Sub
If ActiveCell = "" Then
ActiveCell = "x"
ActiveCell.Font.Bold = True
Call x
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
Else
ActiveCell = ""
Call xx
End If
End Sub
Function x()
Dim i As Integer
For i = 3 To 200
If Range("B" & i) = "x" Then
Worksheets("Feuil1").Range("A" & i).Value = ""
Worksheets("Feuil1").Range("C" & i).Value = "Non-Conforme"
End If
Next i
End Function
Function xx()
Dim i As Integer
For i = 3 To 200
If Range("B" & i) = "" Then
Worksheets("Feuil1").Range("C" & i).Value = ""
End If
Next i
End Function
Merci d'avance pour toute réponse !