macro qui ne s arrete pas

  • Initiateur de la discussion Initiateur de la discussion ktran
  • 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 !

ktran

XLDnaute Junior
bonjour a tous j ai ecris un code macro (grace a vous tous, merci en passant).

le code doit comparer si la valeur dans la cellule de la colonne W est egal a la cellule de la colonne K et ce pour chaque ligne ou il y a des valeurs.

si oui, un msg apparait et la ou les lignes remplissant cette condition est surligne en bleu.

Probleme, lorsque la macro ne s arrete jamais (le sablier cours toujours, mais on ne le voit pas sur le jpg)

dans certain cas, cela surligne en bleu la 1ere ligne mais les autres ou bien pas du tout.

voici le code et les photos joint :

Sub Trigger_Check()
Dim plage As Range
Dim B As Integer
Dim T As Double

With Sheets("FW")
.Select
Set plage = .Range("K4:K" & .Range("K4").End(xlDown).Row)
End With
For Each Cell In plage
B = 4
T = Alert(Cells(B, 23))
If Cell = T Then
Range(Cells(B, 1), Cells(B, 25)).Interior.ColorIndex = 8
End If
A = 2
Next Cell
If A = 2 Then
MsgBox "Alert !! Trigger touched"
End If
End Sub
Function Alert(T As Double) As Double
Alert = T
End Function
 

Pièces jointes

  • error macro.JPG
    error macro.JPG
    43.7 KB · Affichages: 123
  • error macro 2.JPG
    error macro 2.JPG
    39.2 KB · Affichages: 106
  • error macro.JPG
    error macro.JPG
    43.7 KB · Affichages: 166
  • error macro.JPG
    error macro.JPG
    43.7 KB · Affichages: 172
Re : macro qui ne s arrete pas

salut

à tester (avec ce que j'ai compris :
Code:
Sub Trigger_Check()
  Dim B As Integer
  For B = 4 To Range("K4").End(xlDown).Row
    Range(Cells(B, 1), Cells(B, 25)).Interior.ColorIndex _
        = IIf(Range("K" & B) = Range("W" & B), 33, xlNone)
  Next
  MsgBox "Alert !! Trigger touched"
End Sub
 
Re : macro qui ne s arrete pas

Bonjour Ktran,

essaie ceci:

à+


bonjour phlaurent,

ya un petit souci :

le surlignage doit juste se faire de la colonne A jusqua la colonne Y
et a partir de la ligne 4

je ne comprends pas aussi pourquoi quand je lance la macro cela m efface automatiquement, la ligne bleutee fonce (3), elle doit toujours reste bleutee.

il n ya aucune donnee dans la ligne 2 mais la macro la surligne quand meme ?

merci d avance
 

Pièces jointes

  • avant lancer macro.jpg
    avant lancer macro.jpg
    28.5 KB · Affichages: 81
  • apres lancer macro.jpg
    apres lancer macro.jpg
    26.4 KB · Affichages: 72
Re : macro qui ne s arrete pas

salut

à tester (avec ce que j'ai compris :
Code:
Sub Trigger_Check()
  Dim B As Integer
  For B = 4 To Range("K4").End(xlDown).Row
    Range(Cells(B, 1), Cells(B, 25)).Interior.ColorIndex _
        = IIf(Range("K" & B) = Range("W" & B), 33, xlNone)
  Next
  MsgBox "Alert !! Trigger touched"
End Sub


merci pour cette version du code, j en apprends encore. juste une petite question, c est quoi le IIf (if + autre chose ?)
 
Re : macro qui ne s arrete pas

Re,

remplace
For i = 2 To Range("K65535").End(xlUp).Row
par
For i = 4 To Range("K65535").End(xlUp).Row

concernant le "Bouton", il s"agit d'une forme automatique (Shape) sur laquelle j'affecte la macro

à+
Philippe
 
Re : macro qui ne s arrete pas

Re

Range(Cells(B, 1), Cells(B, 25)).Interior.ColorIndex _
= IIf(Range("K" & B) = Range("W" & B), 33, xlNone)
X=IIf(a,b,c) correspond à Si a alors X=b sinon X=c !

@phlaurent : quand tu écris
Code:
Sub Macro1()
  Dim message
  message = ""
  Application.ScreenUpdating = False
...
la variable est initialisée à la déclaration donc la seconde ligne la concernant est superflue.

Ici, j'aurais écrit :
Code:
Sub Macro1()
  Dim message as String 
  Application.ScreenUpdating = False
  ...
sachant que message est déjà une chaîne vide.
 
- 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

Discussions similaires

Réponses
4
Affichages
177
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
Retour