Bonjour à tous,

je ne suis pas très doué en VBA et nécessite votre aide.
Voilà, pour faire court j'ai devant moi un fichier qui se met à jour en temps réel et j'aimerais mettre en place plusieurs macro:

J'aimerais comparer les cellules D208 qui est ma Cible et N208. Si la valeur abs(N208-D208)>1 alors Cible prend la valeur de N208. Maintenant je compare N208 avec la nouvelle valeur de cible et si abs(N208-cible)>1 j'ai un msgbox qui me dit de recalculer mon prix. Une fois le message afficher, si je ne clique pas sur K208, inutile de relancer calculate et de bloquer excel indéfiniment

Ce qui donne

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub worksheet_calculate()
Verif
end sub
 
 
sub worksheet_selectionchange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("K208")) Is Nothing Then
application.enableevents=false
end if
Verif
end sub
 
Sub Verif()
dim cible as double
cible =range("D208").value
if abs(range("N208").value - cible)>1 then
    cible = range("N208").value
           if abs("N208").value-cible)>1 then
                 msgbox "revoir prix"
                 application.enableevents=true
           end if
end if
end sub
Il ne se passe rien avec mon code.
merci de votre aide