Trouver le prochain numéro dans une liste, par catégorie

Résolu/Fermé
mailmxd Messages postés 5 Date d'inscription mercredi 26 février 2014 Statut Membre Dernière intervention 2 mars 2014 - 26 févr. 2014 à 22:30
mailmxd Messages postés 5 Date d'inscription mercredi 26 février 2014 Statut Membre Dernière intervention 2 mars 2014 - 2 mars 2014 à 12:15
Bonjour, j'ai un tableau qui liste les documents de mon service.
Les documents sont divisés en groupe. Chaque groupe a sa numérotation chronologique propre. Comment faire pour identifier le prochain numéro disponible pour un groupe considéré (par exemple indiqué en cellule LiCi).

Merci pour votre aide

Grpe chrono
A 01
A 02
B 01
C 01
A 03
C 02
B 02
A ?

Je suis novice en macro et VB,
Merci encore de prêter attention à ma requête
MXD
A voir également:

3 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 412
27 févr. 2014 à 08:33
Bonjour
il y a peut être et sauf erreur un moyen simple de constituer le N° suivant selon votre modéle:
pour l'exemple, la liste de votre message en A et B à partir de A2
groupe en A, chrono en B

en B2 la formule:

=SI(A2="";"";TEXTE(NB.SI($A$2:A2;A2);"00"))

vous affichera le N° d'ordre suivant pour le groupe inscrit en A
Attention aux signes $ sur le premier A1 et pas sur le second
Le code texte formate la valeur trouvée de façon à obtenir la présentation à deux chiffres de votre demande (définie par "00")

crdlmnt


0
mailmxd Messages postés 5 Date d'inscription mercredi 26 février 2014 Statut Membre Dernière intervention 2 mars 2014
27 févr. 2014 à 18:41
Un grand Merci "Vaucluse".

Cela répond à la question telle que je l'ai formulée.

Est ce que je peux "abuser" néanmoins, car je voulais traiter la liste comme une base de données. Je cherche à faire une macro, qui scrute la liste et renvoie le numéro chrono à utiliser compte tenu de ceux dejà pris.

Voila c'est plus dans ce sens que je posais ma question. Si trop problèmatique, j'édite et mets RESOLU.

A bientôt
MXD
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 412
27 févr. 2014 à 19:07
Re
VBA n'est pas à ce point là dans ma spécialité et donc je ne saurais pas placer le N° en automatique dans une cellule de cette colonne
Mais il y en a surement ici des meilleurs qui pourront résoudre votre problème
crdlmnt
0
mailmxd Messages postés 5 Date d'inscription mercredi 26 février 2014 Statut Membre Dernière intervention 2 mars 2014
1 mars 2014 à 10:03
Bonjour Vaucluse.
Aucun souci la première réponse convenait déjà et avait en grande partie répondu à mon besoin.
Merci pour le coup de main
Bonne journée
MAILMXD
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 238
27 févr. 2014 à 19:57
Bonjour à tous,

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim derlig As Long, lig As Long, data As Variant
    If Target.Count > 1 Then Exit Sub
    If Target.Row = 1 Or Target.Column <> 1 Or Target = "" Then Exit Sub
    On Error GoTo fin
    derlig = Cells(Rows.Count, "A").End(xlUp).Row
    data = [A2].Resize(derlig - 1, 2)
    Application.EnableEvents = False
    For lig = UBound(data) - 1 To 1 Step -1
        ' recherche dernier index du groupe
        If LCase(data(lig, 1)) = LCase(Target) Then
            Target.Offset(, 1) = Format(CLng(data(lig, 2)) + 1, "00")
            Target.Offset(1).Select
            Exit For
        End If
    Next lig
    ' si groupe non trouvé
    If lig = 0 Then Target.Offset(, 1) = "01"
fin:
    Application.EnableEvents = True
End Sub 

J'ai supposé les n° déjà inscrits obligatoirement croissants.
La colonne B doit être au format Texte.
https://www.cjoint.com/c/DBBt3XLPPBU

eric
0
mailmxd Messages postés 5 Date d'inscription mercredi 26 février 2014 Statut Membre Dernière intervention 2 mars 2014
1 mars 2014 à 10:02
Bonjour Eric, et merci beaucoup :)

Suis impressionné par tout ce code.
J'ai voulu aller voir le lien que est inscrit en fin de commentaire.... et tombe sur une page "JE T'EST KILL HACKED / DEFACED par KILL FLOW."

C'est normal ?????????????

(juste pour info) Bonne journée
MXD
0
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 238
1 mars 2014 à 11:20
Bonjour,

Ah non, pas normal du tout. Le site c'est fait hacker, dommage.
Nouveau site de dépot : https://mon-partage.fr/f/FeyJ70z6/

eric
0
mailmxd Messages postés 5 Date d'inscription mercredi 26 février 2014 Statut Membre Dernière intervention 2 mars 2014
2 mars 2014 à 12:15
OK reçu.
Il est cool ce petit code.
Encore merci
à la prochaine
MAILMXD
0