Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion Elise
  • 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 !

E

Elise

Guest
Bonjour à tous le forum !!!

J'ai un petit problème de macro les dernières combinaisons de celle ci ne s'exécute pa, est-ce que qqun pourrait jeter un coup d'oeil parce que je n'arrive décidemment pa a résoudre mon pb
(y a t-il trop de boucle ??? Est ce un pb de longueur ???, ...)
Notamment à partir de If Range ('H19') =

Merci beaucoup par avance (-:

Cordialement



Sub combinaison()

Dim WS As Variant

If Range('h12') <> 'x' Then
For Each WS In Worksheets
WS.Rows('153:153').Delete Shift:=xlUp
Next WS
End If

If Range('b25') = 'x' Then
For Each WS In Worksheets
WS.Rows('147:147').Delete Shift:=xlUp
Next WS
End If

If Range('b24') = 'x' Then
For Each WS In Worksheets
WS.Rows('151:152').Delete Shift:=xlUp
Next WS
End If

If Range('b23') = 'x' Then
For Each WS In Worksheets
WS.Rows('143:152').Delete Shift:=xlUp
Next WS
End If

If Range('b22') = 'x' Then
For Each WS In Worksheets
WS.Rows('137:137').Delete Shift:=xlUp
Next WS
End If

If Range('b21') = 'x' Then
For Each WS In Worksheets
WS.Rows('141:142').Delete Shift:=xlUp
Next WS
End If

If Range('b20') = 'x' Then
For Each WS In Worksheets
WS.Rows('133:142').Delete Shift:=xlUp
Next WS
End If

If Range('b19') = 'x' Then
For Each WS In Worksheets
WS.Rows('121:123').Delete Shift:=xlUp
Next WS
End If

If Range('h8') <> 'x' Then
For Each WS In Worksheets
WS.Rows('126:126').Delete Shift:=xlUp
Next WS
End If

If Range('b18') = 'x' Then
For Each WS In Worksheets
WS.Rows('124:124').Delete Shift:=xlUp
Next WS
End If

If Range('b18') = 'x' Then
For Each WS In Worksheets
WS.Rows('121:122').Delete Shift:=xlUp
Next WS
End If

If Range('b17') = 'x' Then
For Each WS In Worksheets
WS.Rows('123:124').Delete Shift:=xlUp
Next WS
End If

If Range('b17') = 'x' Then
For Each WS In Worksheets
WS.Rows('121:121').Delete Shift:=xlUp
Next WS
End If

If Range('b16') = 'x' Then
For Each WS In Worksheets
WS.Rows('122:124').Delete Shift:=xlUp
Next WS
End If

If Range('b15') = 'x' Then
For Each WS In Worksheets
WS.Rows('121:124').Delete Shift:=xlUp
Next WS
End If

If Range('b14') = 'x' Then
For Each WS In Worksheets
WS.Rows('94:95').Delete Shift:=xlUp
Next WS
End If

If Range('b13') = 'x' Then
For Each WS In Worksheets
WS.Rows('92:93').Delete Shift:=xlUp
Next WS
End If

If Range('b12') = 'x' Then
For Each WS In Worksheets
WS.Rows('91:119').Delete Shift:=xlUp
Next WS
End If

If Range('b11') = 'x' Then
For Each WS In Worksheets
WS.Rows('87:88').Delete Shift:=xlUp
Next WS
End If

If Range('b10') = 'x' Then
For Each WS In Worksheets
WS.Rows('89:90').Delete Shift:=xlUp
Next WS
End If

If Range('h10') <> 'x' Then
For Each WS In Worksheets
WS.Rows('78:78').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '16' Then
For Each WS In Worksheets
WS.Rows('74:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '14' Then
For Each WS In Worksheets
WS.Rows('72:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '12' Then
For Each WS In Worksheets
WS.Rows('70:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '10' Then
For Each WS In Worksheets
WS.Rows('68:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '8' Then
For Each WS In Worksheets
WS.Rows('66:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '6' Then
For Each WS In Worksheets
WS.Rows('64:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '4' Then
For Each WS In Worksheets
WS.Rows('62:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '2' Then
For Each WS In Worksheets
WS.Rows('60:75').Delete Shift:=xlUp
Next WS
End If

If Range('h18') = '0' Then
For Each WS In Worksheets
WS.Rows('58:75').Delete Shift:=xlUp
Next WS
End If

If Range('b9') = 'x' Then
For Each WS In Worksheets
WS.Rows('56:57').Delete Shift:=xlUp
Next WS
End If

If Range('b9') = 'x' Then
For Each WS In Worksheets
WS.Rows('52:53').Delete Shift:=xlUp
Next WS
End If

If Range('b8') = 'x' Then
For Each WS In Worksheets
WS.Rows('54:57').Delete Shift:=xlUp
Next WS
End If

If Range('b7') = 'x' Then
For Each WS In Worksheets
WS.Rows('52:55').Delete Shift:=xlUp
Next WS
End If

If Range('H6') <> 'x' Then
For Each WS In Worksheets
WS.Rows('49:49').Delete Shift:=xlUp
Next WS
End If

If Range('H5') <> 'x' Then
For Each WS In Worksheets
WS.Rows('48:48').Delete Shift:=xlUp
Next WS
End If

If Range('H4') <> 'x' Then
For Each WS In Worksheets
WS.Rows('47:47').Delete Shift:=xlUp
Next WS
End If

If Range('b5') = 'x' Then
Range('C31').Select
Selection.Interior.ColorIndex = xlNone
Range('C32').Select
Selection.Interior.ColorIndex = xlNone
Range('C42').Select
Selection.Interior.ColorIndex = xlNone
Range('C43').Select
Selection.Interior.ColorIndex = xlNone
Range('C44').Select
Selection.Interior.ColorIndex = xlNone
Range('C45').Select
Selection.Interior.ColorIndex = xlNone
Range('C46').Select
Selection.Interior.ColorIndex = xlNone
End If

If Range('b5') = 'x' Then
For Each WS In Worksheets
WS.Rows('37:41').Delete Shift:=xlUp
Next WS
End If

If Range('b4') = 'x' Then
For Each WS In Worksheets
WS.Rows('37:41').Delete Shift:=xlUp
Next WS
End If

If Range('h9') <> 'x' Then
For Each WS In Worksheets
WS.Rows('30:30').Delete Shift:=xlUp
Next WS
End If

If Range('h7') <> 'x' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = [E7] Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h11') <> 'x' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = [E11] Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h15') <= '6' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'PL7' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h15') <= '5' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'PL6' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h15') <= '4' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'PL5' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h15') <= '3' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'PL4' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h15') <= '2' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'PL3' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h15') <= '1' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'PL2' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h15') <= '0' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'PL1' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h16') <= '3' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 4 PL2A' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h16') <= '2' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 3 PL2A' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h16') <= '1' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 2 PL2A' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h16') <= '0' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 1 PL2A' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h17') <= '3' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 4 PL2B' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h17') <= '2' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 3 PL2B' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h17') <= '1' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 2 PL2B' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h17') <= '0' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Insert 1 PL2B' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h19') = '16' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.2 E ARR' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If


If Range('h19') = '14' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.2 D ARR' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If


If Range('h19') = '12' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.2 C ARR' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If


If Range('h19') = '10' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.1 H AVT' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If


If Range('h19') = '8' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.1 G AVT' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If


If Range('h19') = '6' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.1 F AVT' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If


If Range('h19') = '4' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.1 E ARR' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If


If Range('h19') = '2' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.1 D ARR' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

If Range('h19') = '0' Then
For ligne = 1 To [A65000].End(xlUp).Row
If Cells(ligne, 1) = 'Barrettes 1.1 C ARR' Then
For Each WS In Worksheets
WS.Rows(ligne).Delete
Next WS
End If
Next
End If

End Sub
🙂 🙂 🙂 🙂 🙂
 
C'é bon j'ai enfin réussi !!!

j'ai passé toute la journée pour tout éplucher et en fait j'ai changé des codes et maintenant ca marches!! Va comprendre ....

Merci pour ton aide!

Cordialement
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
232
Réponses
10
Affichages
281
Réponses
3
Affichages
115
Réponses
2
Affichages
201
Réponses
4
Affichages
177
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…