Generer une colonne de donner à partir de valeurs min et max

Bonjour,

Je cherche à générer une colonne de donnée (sur la colonne de droite sur la photo) à partir des données de la colonnes de gauche. J'aimerais avoir le minimum (ici 0) sur la première cellule puis une incrémentation de 1 jusqu'à atteindre la valeur max de la colonne de gauche (ici 39).

Est ce possible de faire ça de manière automatique ?

image

Bonjour,

On ne sait pas si on doit incrémenter à chaque valeur ou bien à chaque changement de valeur.

Les 2 options dans le tableau ci joint

Cdlt

Bonjour,

Merci de mettre votre profil de compte à jour en y indiquant votre version excel (2019, 2016, MAC 2019...)

Si votre liste débute en A1 (valeur 0) et va jusque A20 (valeur 39)

- en B1 --> =MIN(A1:A20)
- en B2 --> =SI(MAX(B1+1)<MAX(A$1:A$20);B1+1;"")

Etirez la formule de B2 vers le bas

Cordialement

Edit : oups Arturo83, désolé. Je n'avais pas vu votre post

Merci pour la réponse ! C'est plutôt la première option mais j'aimerai que ça aille jusqu'à 39 plutôt que de s'arrêter à 22.

Bonjour Dan,

Merci c'est exactement ce que je voulais ! C'est possible d'automatiser le fait d'étirer la cellule B2 vers le bas ? Parce que j'aimerai mettre le tout dans une macro.

Re

C'est possible d'automatiser le fait d'étirer la cellule B2 vers le bas ?

Pour bien comprendre, si 0 se trouve en A1 et 39 se trouve en A23, vous voulez l'incrémentation jusque la ligne 39 (donc A39) ?

Non pas vraiment.

Si 0 est en A1 et 39 en A23, je voudrais que la formule s'étire sur la colonne B jusqu'à atteindre dans la cellule la valeur numérique 39, indépendamment du numéro de ligne que ça donne en B.

Pour ma part, j'ai du mal à comprendre comment arriver au résultat, ne serait -il pas plus simple de nous fournir le tableau avec les résultats attendus et à partir de là, il nous sera plus facile de livrer un code ad hoc.

Re

1. En B2 modifiez la formule comme ceci --> =SI(MAX(B1+1)<MAX(A$1:A$23);B1+1;MAX(A$1:A$23))
2. En B1 modifiez la formule --> =MIN(A1:A23)
3. Placez ensuite ce code dans un module

Sub Incrementer()
Dim dlg As Byte, i As Byte

dlg = Range("A" & Rows.Count).End(xlUp).Row

For i = 2 To Range("A" & dlg)
    Range("B2").AutoFill Destination:=Range("B2:B" & i + 1), Type:=xlFillDefault
Next i
End Sub

Associez le code à un bouton éventuellement pour l'exécuter

NB :
- 23 étant la ligne où se trouve actuellement le chiffre 39. Si cela peut varier il faut penser à modifier la formule pour l'adapter à la plage
- Important --> le code suppose que vous n'avez pas de cellule remplie en dessous du chiffre 39 qui ne concernerait pas votre demande

Crdlt

Bonjour à tous !

Pour ma part, j'ai du mal à comprendre comment arriver au résultat, ne serait -il pas plus simple de nous fournir le tableau avec les résultats attendus et à partir de là, il nous sera plus facile de livrer un code ad hoc.

Et ce d'autant plus que, en dépit de la demande de Dan, nous ignorons toujours la nature du produit Excel utilisé...

Merci pour vos réponses !

Voici le fichier pour que ce soit plus clair. Sur la première feuille "Objectif" j'ai mis ce que je souhaitais avoir et sur la deuxième feuille j'aimerais ajouter la macro afin de l'avoir directement.

@Dan votre formule fonctionne effectivement jusqu'au chiffre 23 alors ça ne convient pas tout à fait.

13test.xlsx (10.60 Ko)

@Dan votre formule fonctionne effectivement jusqu'au chiffre 23 alors ça ne convient pas tout à fait.

Je vous ai écrit qu'il fallait adapter. Qu'est ce qui ne convient pas ?
Relisez aussi mon commentaire "Important" et répondez moi sur ce point car déjà votre dernier fichier ne contient pas les modifications que je vous ai données.

Parfait je n'avais pas vu cette partie du message. J'ai adapté le code et ça fonctionne désormais ! Merci encore :)

Ok.

Si votre colonne A ne contient pas d'autres infos en dessous de la dernière valeur (ici 39), vous pouvez aussi modifier votre formule comme ceci :

--> en B1 --> =MIN(DECALER($A$1;;;NBVAL($A:$A)))
--> en B2 --> =SI(MAX(B1+1)<MAX(DECALER($A$1;;;NBVAL($A:$A)));B1+1;MAX(DECALER($A$1;;;NBVAL($A:$A))))

Après le code fait le reste

Rem : oubliez pas votre profil excel à adapter ....

Bonjour à tous de nouveau !

Une proposition (formule unique) ?

=SEQUENCE(MAX(A1:A23)+1;;MIN(A1:A23))

J'attends avec impatience, et gourmandise, le retour....

Bonjour,

@JFL, fonctionne sous 2021....

Cependant, sous réserve de ma compréhension, ne serait-ce point? :

=SEQUENCE(MAX(A1:A23)-MIN(A1:A23)+1;;MIN(A1:A23))

Bonne journée

Bonjour à tous de nouveau !

Cependant, sous réserve de ma compréhension, ne serait-ce point? :

=SEQUENCE(MAX(A1:A23)-MIN(A1:A23)+1;;MIN(A1:A23))

A dire vrai.... je n'en sais rien !

Ma compréhension du besoin : Etablir une liste à partir de 0 jusqu'au max de la plage....

Cela étant, s'il ne restait que ce point à éclaircir.........le but premier de mon dernier message était de faire comprendre à notre ami la nécessité d'indiquer son environnement Excel de façon plus précise.

Rechercher des sujets similaires à "generer colonne donner partir valeurs min max"