Suite de chiffre automatique

Bonjour à tous,

Je suis dans une cellule avec un chiffre "14031" quand je fais entrer au clavier, j'aimerai que le chiffre s'affiche automatiquement à la ligne suivante ici 14032.

Merci pour votre aide, en espérant avoir été explicite.

Sylvie

Ci-joint un exemple.

24cahier-comd.xlsx (11.14 Ko)

Bonjour,

une proposition de solution via une macro événementielle

29cahier-comd.xlsm (14.98 Ko)

Bonjour,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column > 1 Or Target.Row = 1 Then Exit Sub
    If Target = "" And IsNumeric(Target.Offset(-1)) And Target.Offset(-1) <> "" Then Target = Target.Offset(-1) + 1
End Sub

Alt+F11 pour voir le code à mettre dans le module de ta feuille.

L'inscription se fait quand tu sélectionnes la cellule.

eric

19classeur3.xlsm (16.59 Ko)

Bonjour,

Excellent tout ce que j'avais besoin.

Un grand merci

Sylvie

Re,

Je viens de finir toute l'année 2013, en allant à la ligne suivante sans problème le chiffre s'affiche

mais je me suis aperçu par deux fois que je m'étais la date sur le chiffre

Y aurait il une solution pour que cela soit impossible d'écraser le chiffre ?

Les deux réponses que vous m'avez donné, on le même résultat.

Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column > 1 Or Target.Row = 1 Then Exit Sub
    If Target = "" And IsNumeric(Target.Offset(-1)) And Target.Offset(-1) <> "" Then Target = Target.Offset(-1) + 1
End Sub

Merci

Sylvie

Sélectionne B après avoir mis le nombre :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column > 1 Or Target.Row = 1 Then Exit Sub
    If Target = "" And IsNumeric(Target.Offset(-1)) And Target.Offset(-1) <> "" Then
        Target = Target.Offset(-1) + 1
        Application.EnableEvents = False
        Target.Offset(, 1).Select
        Application.EnableEvents = True
    End If
End Sub

eric

astucieux !

Excellent !!! merci Eric

Merci à vous deux.

Bonne soirée

Sylvie

Si c'est la date du jour on peut même la mettre en B et pré-sélectionner C.

eric

Justement, je vais encore vous sollicité, ce que je vous ai demandé c'était pour un cahier de commande, vu que cela fonctionne super bien !!! (encore merci)

pour le numéro d'affaire avec votre macro :

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Target.Column > 1 Or Target.Row = 1 Then Exit Sub
        If Target = "" And IsNumeric(Target.Offset(-1)) And Target.Offset(-1) <> "" Then
            Target = Target.Offset(-1) + 1
            Application.EnableEvents = False
            Target.Offset(, 1).Select
            Application.EnableEvents = True
        End If
    End Sub

J'aimerai le même principe mais ce n'est plus qu'un numéro mais une année, un mois et un numéro pour un cahier de devis.

Ex : 14/06/2327

14 est l'année

06 est le mois

2327 est le numéro d'affaire

Merci

Sylvie

même principe...

Je suppose donc que c'est toujours en A, qu'on récupère le n° au-dessus (?) et que c'est l'année et le mois en cours (?).

Sans remise à 1 en début de mois (?)

Il faut être complète et précise dans les demandes. Une macro fait exactement ce qu'on lui demande et ne supporte pas l'approximation.

A tester :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     If Target.Column > 1 Or Target.Row <2 Then Exit Sub
     If Target.Count > 1 Then Exit Sub
     If Target = "" And Target.Offset(-1) <> "" Then
         Target = Format(Date, "yy") & "/" & Format(Date, "mm") & "/" & Format(Split(Target.Offset(-1), "/")(2) + 1, "0000")
         Application.EnableEvents = False
         Target.Offset(, 1).Select
         Application.EnableEvents = True
     End If
 End Sub

Il faut que le 1er soit saisi manuellement.

Au passage ajoute également :

If Target.Count > 1 Then Exit Sub

au début de l'autre macro, j'avais oublié.

eric

Oui vous supposez bien, excusez-moi de mon manque de précision, désolé.

Je vous remercie encore c'est exactement ce que je voulais !

J'ai rajouté la ligne à l'autre macro, merci mais je ne vois pas à quoi elle sert, rien n'est modifié dans le tableau.

Félicitation pour votre travail.

Bonne journée

Sylvie

Bonjour,

je ne vois pas à quoi elle sert

Elle sert à éviter que la macro plante si tu sélectionnes plusieurs cellules. Je ne traite pas ce cas, ça ne paraissait pas utilie.

eric

Merci pour votre réponse.

Bonne journée

Sylvie

Rechercher des sujets similaires à "suite chiffre automatique"