J'ai une imposante série de nombres sur une seule colonne.
Pour savoir si ces nombres sont en ordre croissant,
je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant()
Set ici = Selection
n = ici.Count
For i = 2 To n
If ici(i) >= ici(i - 1) Then k = k + 1
Next i
If k = n - 1 Then MsgBox "En ordre croissant" _
Else MsgBox "Pas en ordre croissant"
End Sub
qui me semble compétente.
Qu'en pensez-vous ?
Avez-vous une autre façon d'aborder le problème ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Corona
Bonjour Garnote,
Sub Ordre_Croissant() Set ici = Selection n = ici.Count Txt = "En ordre croissant" For i = 2 To n If ici(i) < ici(i - 1) Then Txt = "Pas en ordre croissant": Exit For Next i MsgBox Txt End Sub
Philippe Tulliez
garnote a écrit :
Bonjour,
J'ai une imposante série de nombres sur une seule colonne. Pour savoir si ces nombres sont en ordre croissant, je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant() Set ici = Selection n = ici.Count For i = 2 To n If ici(i) >= ici(i - 1) Then k = k + 1 Next i If k = n - 1 Then MsgBox "En ordre croissant" _ Else MsgBox "Pas en ordre croissant" End Sub
qui me semble compétente.
Qu'en pensez-vous ? Avez-vous une autre façon d'aborder le problème ?
Bonne journée
Serge
Bonjour Garnote,
Sub Ordre_Croissant()
Set ici = Selection
n = ici.Count
Txt = "En ordre croissant"
For i = 2 To n
If ici(i) < ici(i - 1) Then Txt = "Pas en ordre croissant": Exit For
Next i
MsgBox Txt
End Sub
Philippe Tulliez
garnote a écrit :
Bonjour,
J'ai une imposante série de nombres sur une seule colonne.
Pour savoir si ces nombres sont en ordre croissant,
je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant()
Set ici = Selection
n = ici.Count
For i = 2 To n
If ici(i) >= ici(i - 1) Then k = k + 1
Next i
If k = n - 1 Then MsgBox "En ordre croissant" _
Else MsgBox "Pas en ordre croissant"
End Sub
qui me semble compétente.
Qu'en pensez-vous ?
Avez-vous une autre façon d'aborder le problème ?
Sub Ordre_Croissant() Set ici = Selection n = ici.Count Txt = "En ordre croissant" For i = 2 To n If ici(i) < ici(i - 1) Then Txt = "Pas en ordre croissant": Exit For Next i MsgBox Txt End Sub
Philippe Tulliez
garnote a écrit :
Bonjour,
J'ai une imposante série de nombres sur une seule colonne. Pour savoir si ces nombres sont en ordre croissant, je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant() Set ici = Selection n = ici.Count For i = 2 To n If ici(i) >= ici(i - 1) Then k = k + 1 Next i If k = n - 1 Then MsgBox "En ordre croissant" _ Else MsgBox "Pas en ordre croissant" End Sub
qui me semble compétente.
Qu'en pensez-vous ? Avez-vous une autre façon d'aborder le problème ?
Bonne journée
Serge
FFO
Bonjour serge
Tu peux utiliser la mise en forme conditionnelle sur chaque cellule avec l'option inferieur à et la cellule suivante Celà oblige à balayer la colonne pour détecter une cellule colorée
Ou
Utiliser la fonction Si ainsi :
=SI(A2 < A1;1;"")
à mettre dans la cellule B2
Puis avec un filtre colonne B regarder la présence du choix 1
D'autres possibilités donc
A toi de voir
Bonjour serge
Tu peux utiliser la mise en forme conditionnelle sur chaque cellule
avec l'option inferieur à et la cellule suivante
Celà oblige à balayer la colonne pour détecter une cellule colorée
Ou
Utiliser la fonction Si ainsi :
=SI(A2 < A1;1;"")
à mettre dans la cellule B2
Puis avec un filtre colonne B regarder la présence du choix 1
Tu peux utiliser la mise en forme conditionnelle sur chaque cellule avec l'option inferieur à et la cellule suivante Celà oblige à balayer la colonne pour détecter une cellule colorée
Ou
Utiliser la fonction Si ainsi :
=SI(A2 < A1;1;"")
à mettre dans la cellule B2
Puis avec un filtre colonne B regarder la présence du choix 1
D'autres possibilités donc
A toi de voir
Jacky
Bonjour, Une bidouille Les données en colonne A '------------ Sub jj() Columns("A:A").Copy Columns("iv:iv") Columns("iv:iv").Sort Key1:=Range("iv1"), Order1:=xlAscending MsgBox IIf([SUM((a1:a65535<>iv1:iv65535)*1)=0], "Oui, trié", "Non trié") Columns("iv:iv").Delete End Sub '-------------
-- Salutations JJ
"garnote" a écrit dans le message de news:
Bonjour,
J'ai une imposante série de nombres sur une seule colonne. Pour savoir si ces nombres sont en ordre croissant, je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant() Set ici = Selection n = ici.Count For i = 2 To n If ici(i) >= ici(i - 1) Then k = k + 1 Next i If k = n - 1 Then MsgBox "En ordre croissant" _ Else MsgBox "Pas en ordre croissant" End Sub
qui me semble compétente.
Qu'en pensez-vous ? Avez-vous une autre façon d'aborder le problème ?
Bonne journée
Serge
Bonjour,
Une bidouille
Les données en colonne A
'------------
Sub jj()
Columns("A:A").Copy Columns("iv:iv")
Columns("iv:iv").Sort Key1:=Range("iv1"), Order1:=xlAscending
MsgBox IIf([SUM((a1:a65535<>iv1:iv65535)*1)=0], "Oui, trié", "Non trié")
Columns("iv:iv").Delete
End Sub
'-------------
--
Salutations
JJ
"garnote" <garnote3@videotron.ca> a écrit dans le message de news:
up2lxPYTKHA.5164@TK2MSFTNGP02.phx.gbl...
Bonjour,
J'ai une imposante série de nombres sur une seule colonne.
Pour savoir si ces nombres sont en ordre croissant,
je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant()
Set ici = Selection
n = ici.Count
For i = 2 To n
If ici(i) >= ici(i - 1) Then k = k + 1
Next i
If k = n - 1 Then MsgBox "En ordre croissant" _
Else MsgBox "Pas en ordre croissant"
End Sub
qui me semble compétente.
Qu'en pensez-vous ?
Avez-vous une autre façon d'aborder le problème ?
Bonjour, Une bidouille Les données en colonne A '------------ Sub jj() Columns("A:A").Copy Columns("iv:iv") Columns("iv:iv").Sort Key1:=Range("iv1"), Order1:=xlAscending MsgBox IIf([SUM((a1:a65535<>iv1:iv65535)*1)=0], "Oui, trié", "Non trié") Columns("iv:iv").Delete End Sub '-------------
-- Salutations JJ
"garnote" a écrit dans le message de news:
Bonjour,
J'ai une imposante série de nombres sur une seule colonne. Pour savoir si ces nombres sont en ordre croissant, je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant() Set ici = Selection n = ici.Count For i = 2 To n If ici(i) >= ici(i - 1) Then k = k + 1 Next i If k = n - 1 Then MsgBox "En ordre croissant" _ Else MsgBox "Pas en ordre croissant" End Sub
qui me semble compétente.
Qu'en pensez-vous ? Avez-vous une autre façon d'aborder le problème ?
Bonne journée
Serge
garnote
Ave Corona,
Yep, bonne idée. Plus rapide ainsi.
A+ et merci Serge
"Corona" a écrit dans le message de news:
Bonjour Garnote,
Sub Ordre_Croissant() Set ici = Selection n = ici.Count Txt = "En ordre croissant" For i = 2 To n If ici(i) < ici(i - 1) Then Txt = "Pas en ordre croissant": Exit For Next i MsgBox Txt End Sub
Philippe Tulliez
garnote a écrit :
Bonjour,
J'ai une imposante série de nombres sur une seule colonne. Pour savoir si ces nombres sont en ordre croissant, je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant() Set ici = Selection n = ici.Count For i = 2 To n If ici(i) >= ici(i - 1) Then k = k + 1 Next i If k = n - 1 Then MsgBox "En ordre croissant" _ Else MsgBox "Pas en ordre croissant" End Sub
qui me semble compétente.
Qu'en pensez-vous ? Avez-vous une autre façon d'aborder le problème ?
Bonne journée
Serge
Ave Corona,
Yep, bonne idée.
Plus rapide ainsi.
A+ et merci
Serge
"Corona" <PhilippeTulliez@Brux.be> a écrit dans le message de news:
eTHwNlYTKHA.5004@TK2MSFTNGP06.phx.gbl...
Bonjour Garnote,
Sub Ordre_Croissant()
Set ici = Selection
n = ici.Count
Txt = "En ordre croissant"
For i = 2 To n
If ici(i) < ici(i - 1) Then Txt = "Pas en ordre croissant": Exit For
Next i
MsgBox Txt
End Sub
Philippe Tulliez
garnote a écrit :
Bonjour,
J'ai une imposante série de nombres sur une seule colonne.
Pour savoir si ces nombres sont en ordre croissant,
je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant()
Set ici = Selection
n = ici.Count
For i = 2 To n
If ici(i) >= ici(i - 1) Then k = k + 1
Next i
If k = n - 1 Then MsgBox "En ordre croissant" _
Else MsgBox "Pas en ordre croissant"
End Sub
qui me semble compétente.
Qu'en pensez-vous ?
Avez-vous une autre façon d'aborder le problème ?
Sub Ordre_Croissant() Set ici = Selection n = ici.Count Txt = "En ordre croissant" For i = 2 To n If ici(i) < ici(i - 1) Then Txt = "Pas en ordre croissant": Exit For Next i MsgBox Txt End Sub
Philippe Tulliez
garnote a écrit :
Bonjour,
J'ai une imposante série de nombres sur une seule colonne. Pour savoir si ces nombres sont en ordre croissant, je sélectionne la série et je lance cette macro :
Sub Ordre_Croissant() Set ici = Selection n = ici.Count For i = 2 To n If ici(i) >= ici(i - 1) Then k = k + 1 Next i If k = n - 1 Then MsgBox "En ordre croissant" _ Else MsgBox "Pas en ordre croissant" End Sub
qui me semble compétente.
Qu'en pensez-vous ? Avez-vous une autre façon d'aborder le problème ?