IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Incrémentation séquentiel numéro alphanumérique


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Propriétaire
    Inscrit en
    Novembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Propriétaire
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Incrémentation séquentiel numéro alphanumérique
    Bonjour, je sais que ma question pourra sembler assez simple pour certain. Toutefois, j'ai fait plusieurs recherche internet et je n'ai pas trouvé de solution qui répond à mon problème. Voici ce que j'aimerais faire :
    J'ai une liste clients avec toutes leurs informations. La colonne A contient le # séquentiel afin de distinguer chacun des clients. Le format est C00001, C00002, etc... Le premier # client commence à la ligne 3. J'ai un bouton dans un user form pour créer un nouveau client. J'aimerais quand j'appuie sur ce bouton qu'un nouveau # de client soit ajouté à la prochaine ligne vide avec le # de client suivant.

    Est-ce que quelqu'un peut m'aider svp !!!

    Merci !

    Nom : image 1.jpg
Affichages : 1202
Taille : 99,2 Ko

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Bonjour,


    tu extrait la partie numérique de ton numéro , tu l'incrémente puis tu utilise la fonction Format pour la mise en forme..:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    '
    ' Fonction d'incrémentation numéro de client
    '
    ' Format Numéro client X00000 , Avec X une lettre et 00000 un numéro à incrémenter
    '
    Function IncNumClient(stNumPrecedent As String) As String
     
        Dim stPLettre As String 'Premiére lettre
        Dim iPrecNum As Long 'Numero précédent
     
        stPLettre = Left(stNumPrecedent, 1) 'Extraction 1° lettre
        iPrecNum = CLng(Mid(stNumPrecedent, 2)) 'Extraction Numéro..
     
        IncNumClient = stPLettre & Format(iPrecNum + 1, "00000")
     
     
    End Function
     
     
    Sub TestFonctionIncremetation()
     MsgBox "C00010 devient : " & IncNumClient("C00010")
     
    End Sub

  3. #3
    Invité
    Invité(e)
    Par défaut
    bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Function IncrementClient(V As String) As String
    IncrementClient = "C" & Format(Val(Right(V, Len(V) - 1)) + 1, "00000")
    End Function
    Sub test()
    Range("A1") = "C00001"
    Range("A2:A10").FormulaR1C1 = "=IncrementClient(R[-1]C)"
    End Sub

  4. #4
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    Testes ce qui suit. Il faut qu'au moins deux cellules aient déjà une valeur, A3 = C00001 et A4 = C00002 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Private Sub CommandButton1_Click()
     
        Dim Cel As Range
     
        Set Cel = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1)
     
        With Cel
            Range(.Offset(-2), .Offset(-1)).AutoFill Range(.Offset(-2), Cel)
        End With
     
    End Sub

  5. #5
    Candidat au Club
    Homme Profil pro
    Propriétaire
    Inscrit en
    Novembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Propriétaire
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Merci Beaucoup !
    Theze,

    Ta formule fonctionne à merveille !!

    Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Incrémenté une clé alphanumérique
    Par Mmmuzik dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/04/2008, 18h11
  2. Incrémenter le numéro des semaines
    Par liseprachan dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 20/02/2008, 12h03
  3. incrémenter le numéro de l'objet
    Par lesafir dans le forum Langage
    Réponses: 5
    Dernier message: 07/06/2007, 15h41
  4. Incrémentation du numéro de version (dll et exe) en C
    Par biglolo dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 07/02/2007, 18h09
  5. [D6] Incrémenter le numéro de version
    Par Lung dans le forum EDI
    Réponses: 3
    Dernier message: 08/08/2005, 10h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo