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 spéciale cellules [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2005
    Messages : 218
    Par défaut Incrémentation spéciale cellules
    Bonjour à tous

    Je cherche le moyen d'incrémenter une série "spéciale" dans Excel.

    Je m'explique, ma série commence par :

    10A070
    10A075
    10A079
    10A080
    10A085
    10A089

    Je souhaiterais pouvoir incrémenter pour que suivent :

    10A090
    10A095
    10A099
    10A100
    10A105
    10A109
    ....

    Est ce possible ?

    Merci par avance pour l'aide ou les conseils

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub tst()
    Dim i As Long
    For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        Range("B" & i) = "10A" & Format(Int(Mid(Range("A" & i), 4)) + 20, "000")
    Next i
    End Sub

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2005
    Messages : 218
    Par défaut
    Super Merci

    Mais je vois qu'en fait cela analyse ce qu'il y a en colonne A et incrémente dans la colonne B.

    Est ce possible de le faire en suivant vers le bas et éventuellement d'indiquer quand la boucle doit s'arrêter (soit en indiquant la veleur de fin ou le nombre d'incréments ?

    Merci par avance

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub tst()
    Dim i As Long, k As Long
    Dim L As Integer
    'L = InputBox("nombre d'incréments")
    L = 6 'nombre d'incréments à adapter
    k = Cells(Rows.Count, 1).End(xlUp).Row + 1
    For i = 1 To L
        Range("A" & k) = "10A" & Format(Int(Mid(Range("A" & i), 4)) + 20, "000")
        k = k + 1
    Next i
    End Sub

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2005
    Messages : 218
    Par défaut
    Alors là suis bluffé merci.

    Par contre si je lance de nouveau la macro (avec 6 en L, par exemple), il n'incrémente pas dans la continuité de la dernière cellule mais il reprend plus haut. Je ne vis pas dans le script comment lui indiquer cela......

    Merci pour l'aide

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub tst()
    Dim i As Long, k As Long, L As Long
     
    L = Cells(Rows.Count, 1).End(xlUp).Row
    k = L + 1
    Do
        i = i + 1
        Range("A" & k) = "10A" & Format(Int(Mid(Range("A" & i), 4)) + 20, "000")
        k = k + 1
    Loop Until i = L
    End Sub

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

Discussions similaires

  1. Formule d'incrémentation de cellules
    Par Angy987 dans le forum Excel
    Réponses: 2
    Dernier message: 27/07/2010, 18h02
  2. [XL-2007] Incrémenter une cellule
    Par Familitom dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/03/2010, 23h27
  3. [XL-2007] Incrémentation de cellule par rapport à une autre
    Par schmitx dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/01/2010, 11h25
  4. incrémentation de cellule
    Par kingtang dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/12/2007, 19h11
  5. incrémenter une cellule jusqu'a une cellule variable
    Par derf3183 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 05/07/2006, 14h48

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