If Then sous excel jusqu'à 1ere cel vide
Fermé
Nassimo
-
22 mai 2008 à 09:37
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 22 mai 2008 à 10:12
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 22 mai 2008 à 10:12
A voir également:
- If Then sous excel jusqu'à 1ere cel vide
- Liste déroulante excel - Guide
- Aller à la ligne excel - Guide
- Formule excel - Guide
- Si et excel - Guide
- Supprimer page vide word - Guide
3 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 685
22 mai 2008 à 09:51
22 mai 2008 à 09:51
bonjour
Tu peux essayer ceci
Tu peux essayer ceci
Sub essaiconditions() Dim l As Long For l = 3 To Cells(1, 4).SpecialCells(xlLastCell).Row If ((Cells(l, 4).Value < 5000) _ And (Cells(l, 2).Value = 2) _ Or (Cells(l, 4).Value >= 5000 _ And Cells(l, 4).Value < 17500) _ And (Cells(l, 2).Value = 2.25) _ Or (Cells(l, 4).Value >= 17500) _ And (Cells(l, 2).Value = 2.5)) Then Cells(l, 5).Value = True Else Cells(l, 5).Value = False End If Next l End Sub
waoo40
Messages postés
106
Date d'inscription
mercredi 4 avril 2007
Statut
Membre
Dernière intervention
1 juin 2018
4
22 mai 2008 à 10:06
22 mai 2008 à 10:06
Bonjour, Nassimo.
Voilà ta macro comme elle doit être pour lister, dans ce cas, les lignes 3 à 50.
Pour changer les lignes à balayer, remplaces les valeurs de Ligne.
Cela devrait te convenir.
Amicalement,
JM
Sub essaiconditions()
Ligne = 3
For Ligne = 3 To 50
ActiveSheet.Range("d3").Select
If ((Cells(Ligne, 4).Value < 5000) And (Cells(Ligne, 2).Value = 2) Or (Cells(Ligne, 4).Value >= 5000 And Cells(Ligne, 4).Value < 17500) And (Cells(Ligne, 2).Value = 2.25) Or (Cells(Ligne, 4).Value >= 17500) And (Cells(Ligne, 2).Value = 2.5)) Then
Cells(Ligne, 5).Value = True
Else
Cells(Ligne, 5).Value = False
End If
Next
End Sub
Voilà ta macro comme elle doit être pour lister, dans ce cas, les lignes 3 à 50.
Pour changer les lignes à balayer, remplaces les valeurs de Ligne.
Cela devrait te convenir.
Amicalement,
JM
Sub essaiconditions()
Ligne = 3
For Ligne = 3 To 50
ActiveSheet.Range("d3").Select
If ((Cells(Ligne, 4).Value < 5000) And (Cells(Ligne, 2).Value = 2) Or (Cells(Ligne, 4).Value >= 5000 And Cells(Ligne, 4).Value < 17500) And (Cells(Ligne, 2).Value = 2.25) Or (Cells(Ligne, 4).Value >= 17500) And (Cells(Ligne, 2).Value = 2.5)) Then
Cells(Ligne, 5).Value = True
Else
Cells(Ligne, 5).Value = False
End If
Next
End Sub
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 685
22 mai 2008 à 10:12
22 mai 2008 à 10:12
bonjour
Maintenant il faut que je comprenne.
Ca viendra.
Pas de souci tout le monde a commencé un jour ou l'autre.
La variable l représente la ligne et elle s'incrémente avec "next" pour parcourir l'ensemble de la feuille.
J'ai utilisé "Cells(l, 4)" avec comme paramètres ligne , colonne qui sont simples à comprendre.
Cells(1, 4).SpecialCells(xlLastCell).Row permet de trouver la dernière ligne utilisée de cette colonne
Maintenant il faut que je comprenne.
Ca viendra.
Pas de souci tout le monde a commencé un jour ou l'autre.
La variable l représente la ligne et elle s'incrémente avec "next" pour parcourir l'ensemble de la feuille.
J'ai utilisé "Cells(l, 4)" avec comme paramètres ligne , colonne qui sont simples à comprendre.
Cells(1, 4).SpecialCells(xlLastCell).Row permet de trouver la dernière ligne utilisée de cette colonne
22 mai 2008 à 09:56
Magnifique.
Merci.
Merci.
Merci.
Maintenant il faut que je comprenne.
Ca viendra.
Encore merci.