2 conditions dans une boucle
Fermé
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
-
Modifié par jordane45 le 13/11/2015 à 10:15
pascalou83400 Messages postés 273 Date d'inscription dimanche 20 juillet 2014 Statut Membre Dernière intervention 24 janvier 2022 - 13 nov. 2015 à 17:18
pascalou83400 Messages postés 273 Date d'inscription dimanche 20 juillet 2014 Statut Membre Dernière intervention 24 janvier 2022 - 13 nov. 2015 à 17:18
A voir également:
- 2 conditions dans une boucle
- 2 ecran pc - Guide
- Word numéro de page 1/2 - Guide
- 2 comptes whatsapp - Guide
- Imprimer a3 sur 2 a4 ✓ - Forum Bureautique
10 réponses
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
13 nov. 2015 à 07:48
13 nov. 2015 à 07:48
Bonjour,
imbriquer ces 2 conditions lesquelles er qu'est-ce qui ne fonctionne pas ?????
Dans le code (qui marche), y a pas de couleur programmee
imbriquer ces 2 conditions lesquelles er qu'est-ce qui ne fonctionne pas ?????
Dans le code (qui marche), y a pas de couleur programmee
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
Modifié par jordane45 le 13/11/2015 à 10:15
Modifié par jordane45 le 13/11/2015 à 10:15
Bonjour f894009,
Merci pour ton aide.
Je n'avais pas rectifié les explications du code.
Je veux que si l'une des 2 conditions sont remplies alors je met en italique gras.
J'ai réécrit ce code mais code erreur next sans FOR
Alors j'ai modifié avec ce code et toujours le même code erreur ?
Je ne comprends pas ce que je dois faire.
j'ai tenté celui la et la rien ne ce passe
Merci pour ton aide.
Je n'avais pas rectifié les explications du code.
Je veux que si l'une des 2 conditions sont remplies alors je met en italique gras.
J'ai réécrit ce code mais code erreur next sans FOR
' Met la police en italique et gras dans la colonne A/D si dans Colonne AH = "Notre Sélection" Dim PL As Range Dim PLV As Range Dim Cel As Range 'Nom de feuille à adapter ' ActiveWorkbook.Worksheets("Feuil1")' With Worksheets(I) 'Balayage de la colonne AH18, jusqu'à la dernière cellule renseignée For Each Cel In .Range("AH18:AI" & .Range("AH" & Rows.Count).End(xlUp).Row) 'Si la cellule contient "Notre Sélection" If Cel.Value = "Notre Sélection" Then If Cel.Value = "Truffaut Sélection" Then 'alors, on modifie la police correspondante en colonne A/D '.Cells(Cel.Row, 1).Resize(1, 4).Font.ColorIndex = xlAutomatic ' Interior.ColorIndex = 4 .Cells(Cel.Row, 1).Resize(1, 4).Font.Bold = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 57 Else ' mais si il n'y a pas Notre Selection alors on met la police en standard '.Cells(Cel.Row, 3).Resize(1, 4).Font.ColorIndex = xlAutomatic '.Interior.ColorIndex = xlNone .Cells(Cel.Row, 3).Resize(1, 4).Font.Bold = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 55 End If Next Cel End With
Alors j'ai modifié avec ce code et toujours le même code erreur ?
Je ne comprends pas ce que je dois faire.
' Met la police en italique et gras dans la colonne A/D si dans Colonne AH = "Notre Sélection" Dim PL As Range Dim PLV As Range Dim Cel As Range Dim Cel2 As Range 'Nom de feuille à adapter ' ActiveWorkbook.Worksheets("Feuil1")' With Worksheets(I) 'Balayage de la colonne AH18, jusqu'à la dernière cellule renseignée For Each Cel In .Range("AH18:AI" & .Range("AH" & Rows.Count).End(xlUp).Row) 'Si la cellule contient "Notre Sélection" If Cel.Value = "Notre Sélection" Then If Cel2.Value = "Truffaut Sélection" Then 'alors, on modifie la police correspondante en colonne A/D '.Cells(Cel.Row, 1).Resize(1, 4).Font.ColorIndex = xlAutomatic ' Interior.ColorIndex = 4 .Cells(Cel.Row, 1).Resize(1, 4).Font.Bold = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 57 Else ' mais si il n'y a pas Notre Selection alors on met la police en standard '.Cells(Cel.Row, 3).Resize(1, 4).Font.ColorIndex = xlAutomatic '.Interior.ColorIndex = xlNone .Cells(Cel.Row, 3).Resize(1, 4).Font.Bold = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 55 End If Next Cel Next Cel2 End With
j'ai tenté celui la et la rien ne ce passe
' Met la police en italique et gras dans la colonne A/D si dans Colonne AH = "Notre Sélection" Dim PL As Range Dim PLV As Range Dim Cel As Range Dim Cel2 As Range 'Nom de feuille à adapter ' ActiveWorkbook.Worksheets("Feuil1")' With Worksheets(I) 'Balayage de la colonne AH18, jusqu'à la dernière cellule renseignée For Each Cel In .Range("AH18:AI" & .Range("AH" & Rows.Count).End(xlUp).Row) 'Si la cellule contient "Notre Sélection" If Cel.Value = "Notre Sélection" & "Truffaut Sélection" Then ' If Cel2.Value = "Truffaut Sélection" Then 'alors, on modifie la police correspondante en colonne A/D '.Cells(Cel.Row, 1).Resize(1, 4).Font.ColorIndex = xlAutomatic ' Interior.ColorIndex = 4 .Cells(Cel.Row, 1).Resize(1, 4).Font.Bold = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 57 Else ' mais si il n'y a pas Notre Selection alors on met la police en standard '.Cells(Cel.Row, 3).Resize(1, 4).Font.ColorIndex = xlAutomatic '.Interior.ColorIndex = xlNone .Cells(Cel.Row, 3).Resize(1, 4).Font.Bold = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 55 End If Next Cel ' End If ' Next Cel2 End With
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI Merci d'y penser dans tes prochains messages. |
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
13 nov. 2015 à 09:29
13 nov. 2015 à 09:29
Re,
les cellules colonnes AH ne peuvent pas contenir "Notre Sélection" et"Truffaut Sélection" en meme temps !!!!!!!!!!!!!!!!!!!!!!!!!!
les cellules colonnes AH ne peuvent pas contenir "Notre Sélection" et"Truffaut Sélection" en meme temps !!!!!!!!!!!!!!!!!!!!!!!!!!
Sub test() Dim PL As Range Dim PLV As Range Dim Cel As Range 'Nom de feuille à adapter ' ActiveWorkbook.Worksheets("Feuil1")' With Worksheets(I) 'Balayage de la colonne AH18, jusqu'à la dernière cellule renseignée For Each Cel In .Range("AH18:AI" & .Range("AH" & Rows.Count).End(xlUp).Row) 'Si la cellule contient "Notre Sélection" If Cel.Value = "Notre Sélection" Or Cel.Value = Cel.Value = "Truffaut Sélection" Then 'alors, on modifie la police correspondante en colonne A/D '.Cells(Cel.Row, 1).Resize(1, 4).Font.ColorIndex = xlAutomatic ' Interior.ColorIndex = 4 .Cells(Cel.Row, 1).Resize(1, 4).Font.Bold = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = True .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 57 Else ' mais si il n'y a pas Notre Selection alors on met la police en standard '.Cells(Cel.Row, 3).Resize(1, 4).Font.ColorIndex = xlAutomatic '.Interior.ColorIndex = xlNone .Cells(Cel.Row, 3).Resize(1, 4).Font.Bold = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Italic = False .Cells(Cel.Row, 1).Resize(1, 4).Font.Size = 55 End If Next Cel End With End Sub
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
13 nov. 2015 à 10:01
13 nov. 2015 à 10:01
ha oui je n'avais pas précisé que dans AH il y a notre selection et dans AI truffaut selection et que du moment il y a une des 2 alors on change la police.
Je vais essayer ton code et je reviens vers toi.
Merci.
Je vais essayer ton code et je reviens vers toi.
Merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
13 nov. 2015 à 10:34
13 nov. 2015 à 10:34
Bon je ne marche pas, ca ne met pas en gras italique si j'ai notre selection ou truffaut selection.
Peut etre que cela vient que j'ai 1 colonne pour notre selection en AH et que la 2 eme colonne truffaut selection est en AI.
Quand je mets For Each Cel In .Range("AH18:AI" & .Range("AH" & Rows.Count).End(xlUp).Row) il cherche bien dans les 2 colonnes ?
Je ne comprends pas tout en vba, merci pour ton aide.
Peut etre que cela vient que j'ai 1 colonne pour notre selection en AH et que la 2 eme colonne truffaut selection est en AI.
Quand je mets For Each Cel In .Range("AH18:AI" & .Range("AH" & Rows.Count).End(xlUp).Row) il cherche bien dans les 2 colonnes ?
Je ne comprends pas tout en vba, merci pour ton aide.
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
13 nov. 2015 à 10:40
13 nov. 2015 à 10:40
Re,
Peut etre que cela vient que j'ai 1 colonne pour notre selection en AH et que la 2 eme colonne truffaut selection est en AI. Expliquez ce que vous voulez sans code VBA, juste avec des mots
Peut etre que cela vient que j'ai 1 colonne pour notre selection en AH et que la 2 eme colonne truffaut selection est en AI. Expliquez ce que vous voulez sans code VBA, juste avec des mots
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
13 nov. 2015 à 10:53
13 nov. 2015 à 10:53
Merci pour ta patience.
Je veux mettre en gras italique les cellules de A/D si dans la colonne AH il y a d'écrit notre selection et ou dans la colonne AI il y a d'écrit Truffaut selection, je peux avoir les 2 conditions de remplies pour une ligne,et si il n'y a rien alors on met la police ni gras et ni italique.
Bon j'espère que c'est explicite ?
Je veux mettre en gras italique les cellules de A/D si dans la colonne AH il y a d'écrit notre selection et ou dans la colonne AI il y a d'écrit Truffaut selection, je peux avoir les 2 conditions de remplies pour une ligne,et si il n'y a rien alors on met la police ni gras et ni italique.
Bon j'espère que c'est explicite ?
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
13 nov. 2015 à 11:51
13 nov. 2015 à 11:51
Re,
C'est bon, je fais
C'est bon, je fais
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
13 nov. 2015 à 11:56
13 nov. 2015 à 11:56
Ok merci, je tourne le code dans tout les sens et je ne trouve pas.
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
13 nov. 2015 à 12:09
13 nov. 2015 à 12:09
Re,
Sub test() Dim PL As Range Dim PLV As Range Dim Cel As Range Dim Plage As Range 'Nom de feuille à adapter ' ActiveWorkbook.Worksheets("Feuil1")' With Worksheets("Feuil1") 'Balayage de la colonne AH18, jusqu'à la dernière cellule renseignée Set Plage = Range("AH18:AH" & .Range("AH" & Rows.Count).End(xlUp).Row) For Each Cel In Plage 'Si (la cellule AHxx contient "Notre Sélection" ou la cellule AIxx contient "Truffaut Sélection" If Cel.Value = "Notre Sélection" Or Cel.Offset(, 1).Value = "Truffaut Sélection" Then 'alors, on modifie la police correspondante en colonne A/D '.Cells(Cel.Row, 1).Resize(, 4).Font.ColorIndex = xlAutomatic ' Interior.ColorIndex = 4 .Cells(Cel.Row, 1).Resize(, 4).Font.Bold = True .Cells(Cel.Row, 1).Resize(, 4).Font.Italic = True .Cells(Cel.Row, 1).Resize(, 4).Font.Size = 57 Else ' mais si il n'y a pas Notre Selection alors on met la police en standard '.Cells(Cel.Row, 3).Resize(1, 4).Font.ColorIndex = xlAutomatic '.Interior.ColorIndex = xlNone .Cells(Cel.Row, 1).Resize(, 4).Font.Bold = False .Cells(Cel.Row, 1).Resize(, 4).Font.Italic = False .Cells(Cel.Row, 1).Resize(, 4).Font.Size = 55 End If Next Cel End With End Sub
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
13 nov. 2015 à 13:25
13 nov. 2015 à 13:25
Ok je vais essayer ce code et je te dis.
Merci.
Merci.
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
13 nov. 2015 à 17:12
13 nov. 2015 à 17:12
Bon j'ai fait des essais ca marche, mais je n'ai pas compris le code je vais le décortiquer et je verrai si je comprends.
Je te remercie pour ton aide si précieuse.
Je te souhaite une bonne soirée.
Amicalement.
Pascal
Je te remercie pour ton aide si précieuse.
Je te souhaite une bonne soirée.
Amicalement.
Pascal
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
13 nov. 2015 à 17:18
13 nov. 2015 à 17:18
Si je peux abuser, j'avais un code que m'avait donné ThauTHeme, mais j'ai jamais reusi à l'integrer dans ma boucle, je veux que le filtre reste sur la ligne A17, et il m'avait donné ce code :
Dim I as Integer
For I = 1 To Sheets.Count
If Sheets(I).FilterMode = False Then Sheets(I).Range("A17").AutoFilter
Next I
merci par avance si tu as encore un peu de patience pour un pauvre novice.
Dim I as Integer
For I = 1 To Sheets.Count
If Sheets(I).FilterMode = False Then Sheets(I).Range("A17").AutoFilter
Next I
merci par avance si tu as encore un peu de patience pour un pauvre novice.