Incrémentation d'une colonne

Résolu
Bonjour,

Je cherche à créer une macro afin d'incrémenter une colonne de mon fichier Excel.
Actuellement il se compose comme ci-dessous :

données 1 ----------données 2
-----a-----------------------b
-----c-----------------------h
-----d-----------------------f

J'aimerais ajouter une colonne comme ci-dessous :

données 1 ----------données 2----- données 3
-----a-----------------------b------------------1
-----c-----------------------h------------------2
-----d-----------------------f------------------3

La contrainte est qu'il faut arrêter d'incrémenter à la dernière ligne.

Est ce que vous pouvez m'aider SVP?

Merci d'avance

floflo18

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour

    Dans la premiere cellule nouvelle colonne, par exemple C2 tu mets 1
    puis en C3 tu mets =C2+1
    Ensuite tu double-clic sur le petit carré noir à droite en bas de la cellule C3

    Cdlmnt
    1. En fait il faudrait que je le fasse avec une macro. Parce que je dois automatiser plusieurs actions dont celle-ci.

      Cordialement
      1. Bonsoir

        Une possibilité :

        Se placer dans la cellule où devra être inscrit Données 3 avant de lancer la macro

        Sub numeroter()
        ActiveCell.Value = "Données 3"  'modifier le nom si nécessaire
        colon = ActiveCell.Column
        lignedebut = ActiveCell.Row
        dernligne = Columns(lignedebut - 1).Find("*", , , , xlByColumns, xlPrevious).Row
        num = 0
        For n = lignedebut + 1 To dernligne
        num = num + 1
        ActiveSheet.Cells(n, colon) = num
        Next n
        End Sub


        Cdlmnt
      2. Je ne comprends la phrase : "où devra être inscrit Données 3 avant de lancer la macro"

        C'est justement ça que j'aimerais : ne pas être obligé de se placer dans la cellule. Mais je ne vois pas comment l'intégrer dans la macro?
        Cordialement
      3. Contributeur
        Bonjour,

        Autre proposition :
        Sub numLig()
            Dim lig As Long
            Application.ScreenUpdating = False
            For lig = Cells(Rows.Count, "C").End(xlUp).Row + 1 To Cells(Rows.Count, "A").End(xlUp).Row
                Cells(lig, "C") = lig - 1
            Next lig
            Application.ScreenUpdating = True
        End Sub

        Numérotation en C, A étant sensé être rempli sur la dernière ligne.

        eric
      4. C'est parfait. Ca marche.

        Merci beaucoup.

        Bien cordialement

        floflo18