faire classement de chiffre

Danielle Odette

XLDnaute Occasionnel
Bonsoir à tous ,

Je viens vers vous car je ne sais pas le réaliser

Est t'il possible d'avoir une formule pour classer les chiffres se trouvant en colonne AA
59 A 78 colonne placé en AG en automatique en faisant en sorte du plus petit chiffre au plus grand
en tenant compte des points plus élevé en premiers
Voir fichier en pièce jointe expliqué à partir de la ligne 49
colonne AA 59 A 78

En vous remerciant par Avance

cordialement

Danielle
 

Pièces jointes

  • VOIR A PARTIR DE COLONNE Z 59.xlsx
    248 KB · Affichages: 27

Danielle Odette

XLDnaute Occasionnel
Bonsoir @Guillouche Danielle,

Une piste avec une formule matricielle en AG59 à tirer vers le bas (pour le classement) et une MFC basée sur une formule pour repérer les classements des valeurs égales à 5.

Bonjour mapomme,

Merci beaucoup ,cela à l'air de fonctionner en ayant fait un copier coller ; Je vous tiens au courant .

Vous êtes rapide dans votre réponse merci encore et bonne journée à vous

cordialement

Danielle
 

Danielle Odette

XLDnaute Occasionnel
Bonsoir @Guillouche Danielle,

Une piste avec une formule matricielle en AG59 à tirer vers le bas (pour le classement) et une MFC basée sur une formule pour repérer les classements des valeurs égales à 5.

Bonjour à tous
Re bonjour mapomme,

Formidable cela fonctionne à merveille vous êtes un pro .Juste me dire comment faire pour enlever
vos conseils car cela me gêne dans mon travail et je ne sais pas comment faire pour l'enlever

Merci beaucoup de votre temps , de votre travail ,de votre aide cela permet de gagner un temps fou

Merci du fond du cœur à vous mapomme et toutes les personnes qui on participé à un moment ou à un autre
dans l'aide que je demande à travers ce forum

Cordialement
Danielle
 

Danielle Odette

XLDnaute Occasionnel
Re :),
QUOTE="Guillouche Danielle, post: 20207658, member: 206300"]Juste me dire comment faire pour enlever
vos conseils car cela me gêne dans mon travail et je ne sais pas comment faire pour l'enlever
  • sélectionner la ou les cellules avec un commentaire
  • Clique-droit
  • choisir le sous-menu "Effacer le commentaire"
[/QUOTE]

Re ,

Merci beaucoup vous êtes un chef

Milles et Milles Merci pour votre temps

Cordialement
Danielle
 

job75

XLDnaute Barbatruc
Bonjour Guillouche Danielle, mapomme,

Une solution sans aucune formule avec cette macro dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim modele As Range, points As Range, classement As Range, h&, mem, c As Range
Set modele = [Z54:AC54] 'à adapter
Set points = [AA58] 'à adapter
Set classement = [AG58] 'à adapter
Application.ScreenUpdating = False
Application.EnableEvents = False 'désactive les évènements
On Error Resume Next 'sécurité
points(2).Resize(Rows.Count - points.Row).SpecialCells(xlCellTypeBlanks).Delete xlUp 'supprime les cellules vides
h = Application.Count(points(2).Resize(Rows.Count - points.Row))
'---RAZ---
mem = points(2).Resize(h) 'mémorise
points(2, 0).Resize(Rows.Count - points.Row, 3).Delete xlUp
classement(2, 0).Resize(Rows.Count - classement.Row).Delete xlUp
'---1er tableau---
modele(1).Copy points(2, 0).Resize(h)
points(2, 0) = 1
points(2, 0).Resize(h).DataSeries
modele(2).Copy points(2).Resize(h)
points(2).Resize(h) = mem 'restitution
modele(3).Copy points(2, 2).Resize(h)
points(2, 2).Resize(h) = "=IF(RC[-1]=5,RC[-2],"""")"
points(2, 2).Resize(h) = points(2, 2).Resize(h).Value 'supprime les formules
modele(4).Copy Intersect(points(2).Resize(h), points(2, 2).Resize(h).SpecialCells(xlCellTypeConstants).EntireRow)
'---2ème tableau---
points(2, 0).Resize(h, 2).Sort points, xlDescending, Header:=xlNo 'tri décroissant
points(2, 0).Resize(h).Copy classement(2)
points(2, 0).Resize(h, 2).Sort points(1, 0), xlAscending, Header:=xlNo 'tri croissant
For Each c In points(2, 2).Resize(h).SpecialCells(xlCellTypeConstants)
    With classement(2).Resize(h).Find(c, , xlValues, xlWhole)
        modele(4).Copy .Cells
        .Value = c
    End With
Next
Application.EnableEvents = True 'réactive les évènements
End Sub
Elle s'exécute quand on modifie ou valide une cellule quelconque.

Fichier .xlsm joint.

A+
 

Pièces jointes

  • VOIR A PARTIR DE COLONNE Z 59(1).xlsm
    257.6 KB · Affichages: 15

Danielle Odette

XLDnaute Occasionnel
Bonjour Guillouche Danielle, mapomme,

Une solution sans aucune formule avec cette macro dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim modele As Range, points As Range, classement As Range, h&, mem, c As Range
Set modele = [Z54:AC54] 'à adapter
Set points = [AA58] 'à adapter
Set classement = [AG58] 'à adapter
Application.ScreenUpdating = False
Application.EnableEvents = False 'désactive les évènements
On Error Resume Next 'sécurité
points(2).Resize(Rows.Count - points.Row).SpecialCells(xlCellTypeBlanks).Delete xlUp 'supprime les cellules vides
h = Application.Count(points(2).Resize(Rows.Count - points.Row))
'---RAZ---
mem = points(2).Resize(h) 'mémorise
points(2, 0).Resize(Rows.Count - points.Row, 3).Delete xlUp
classement(2, 0).Resize(Rows.Count - classement.Row).Delete xlUp
'---1er tableau---
modele(1).Copy points(2, 0).Resize(h)
points(2, 0) = 1
points(2, 0).Resize(h).DataSeries
modele(2).Copy points(2).Resize(h)
points(2).Resize(h) = mem 'restitution
modele(3).Copy points(2, 2).Resize(h)
points(2, 2).Resize(h) = "=IF(RC[-1]=5,RC[-2],"""")"
points(2, 2).Resize(h) = points(2, 2).Resize(h).Value 'supprime les formules
modele(4).Copy Intersect(points(2).Resize(h), points(2, 2).Resize(h).SpecialCells(xlCellTypeConstants).EntireRow)
'---2ème tableau---
points(2, 0).Resize(h, 2).Sort points, xlDescending, Header:=xlNo 'tri décroissant
points(2, 0).Resize(h).Copy classement(2)
points(2, 0).Resize(h, 2).Sort points(1, 0), xlAscending, Header:=xlNo 'tri croissant
For Each c In points(2, 2).Resize(h).SpecialCells(xlCellTypeConstants)
    With classement(2).Resize(h).Find(c, , xlValues, xlWhole)
        modele(4).Copy .Cells
        .Value = c
    End With
Next
Application.EnableEvents = True 'réactive les évènements
End Sub
Elle s'exécute quand on modifie ou valide une cellule quelconque.

Fichier .xlsm joint.

A+

Bonjour à tous
bonjour job75,

Merci beaucoup celui de mapomme fonctionne à merveille .

Je viens de changer les chiffres sur le votre et
rien se passe et ça bloque impossible d’aller dans une case avec ma souris c'est bloqué ?

Je sais que je ne suis pas futé mais impossible de bouger !!!

"C'est bon , je l'ai refermé et rouvert et nickel il fonctionne "

Vous êtes des as d'excel merci à vous tous de votre temps , de votre gentillesse

moi ça m'aide énormément en tout cas Milles merci à vous tous !

Cordialement
Danielle
 

Danielle Odette

XLDnaute Occasionnel
Bonsoir à tous ,

Encore Besoin d'une formule .

Je m’explique j'ai dans une colonne exemple le chiffre 15 ou 20 ou 11 OU 16 ect dans une case

à coté je voudrais une formule qui additionne c'est à dire 15 deviens ( 1 + 5 = 6 ) si j'ai exemple 20 ( 2+0= 2 ) ect

quel formule dois je mettre quel que soit le chiffre double pour obtenir l'addition en automatique

Merci d'avance pour tout

Cordialement

Danielle
 

Discussions similaires