amaigrissement de macro lourde(s)

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

CMoa

XLDnaute Occasionnel
Bonjour à tous 🙂
Pourriez-vous faire subir à cette macro 3 heures de vélo et 3 heures de course à pied afin qu'elle retrouve la ligne 😉
Vu son poids,elle me ralenti tout le reste de la macro("déjà lourde par elle même").
Code:
If Range("B" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("B2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("C" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("C2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("D" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("D2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("E" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("E2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
 If Range("F" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("F2").Value), vbYes, "Validation"
Target = ""
End If
If Range("G" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("G2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("H" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("H2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("I" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("I2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("J" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("J2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("K" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("K2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("L" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("L2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("M" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("M2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("N" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("N2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
If Range("O" & Target.Row) = "" Then
MsgBox ("Manque: " & Range("O2").Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
Pour résumer:j'ai une ligne B2:O2 qui contient des données fixes qui sont renvoyées ("message")lorsque la cellule de la ligne Bx;Cx;Dx... est vide.
Merci pour votre participation.
 
Re : amaigrissement de macro lourde(s)

Bonsoir à tous,

S'il s'agit de la raccourcir, pas de soucis, mais pas forcément d'améliorer des temps d'exécution...

Code:
For i = 2 to 15
If cells(Target.Row,i) = "" Then
MsgBox ("Manque: " & Cells(2,i).Value), vbYes, "Validation"
Target = ""
Exit Sub
End If
Next i
 
Re : amaigrissement de macro lourde(s)

Bonjour Pierrot93;tototiti2008 et le fil 🙂
Merci de vos réponses rapides.
C'est comme à chaque fois : Parfait.
Merci beaucoup tototiti2008.
Restez au frais;il fait chaud dehors 😉
 
- 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
9
Affichages
201
Réponses
4
Affichages
223
Réponses
2
Affichages
153
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
Réponses
4
Affichages
243
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
162
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
649
Retour