Ajout date automatique apres mon texte

Bonjour,

Voici mon problème, je gère actuellement un tableau ou des personnes doivent remplir des cases avec leurs initiales et j'aurais aimé ajouter une date derrière les initiales de la personne en automatique, le seul problème est que je ne maitrise pas encore Excel et je débute en VBA

Donc j'aurais besoin de votre aide pour que lorsque dans ma cellule j'inscris quelque chose (par exemple "JF") la date ce rajoute automatiquement dans cette même cellule afin d'avoir "JF-05/09"

Merci d'avance.

bonjour,

une solution via une macro événementielle, à mettre dans le code de la feuille, adapter éventuellement le numéro de colonne 1 pour A, 2 pour B, etc

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 1 And Target.Value <> "" Then
        Application.EnableEvents = False
        Target.Value = Target.Value & "-" & Format(Now(), "d/m")
        Application.EnableEvents = True
    End If
End Sub

Super merci

et donc si je veut faire en sorte que cela s'applique juste a une plage (de H21 à M66 par exemple), il faut que modifie cette ligne non ?

If Target.Column = 1 And Target.Value <> "" Then

re-bonjour,

en effet

voici la correction du code pour test sur une plage

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("H21:M66")) Is Nothing And Target.Value <> "" Then
        Application.EnableEvents = False
        Target.Value = Target.Value & "-" & Format(Now(), "d/m")
        Application.EnableEvents = True
    End If
End Sub
h2so4 a écrit :

re-bonjour,

en effet

voici la correction du code pour test sur une plage

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("H21:M66")) Is Nothing And Target.Value <> "" Then
        Application.EnableEvents = False
        Target.Value = Target.Value & "-" & Format(Now(), "d/m")
        Application.EnableEvents = True
    End If
End Sub

super ca fonctionne merci !!

Maintenant je vais essaye de trouver pourquoi je doit clique sur ma case apres avoir rentrée les initial pour mettre la date et aussi pourquoi cela me rajoute une date a chaque fois que je clique sur la case

Coshii a écrit :

Maintenant je vais essaye de trouver pourquoi je doit clique sur ma case apres avoir rentrée les initial pour mettre la date et aussi pourquoi cela me rajoute une date a chaque fois que je clique sur la case

pour éviter l'ajout d'une date quand il y déjà une date, voici

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("H21:M66")) Is Nothing And Target.Value <> "" Then
        If InStr(Target.Value, "-") = 0 Then
            Application.EnableEvents = False
            Target.Value = Target.Value & "-" & Format(Now(), "d/m")
            Application.EnableEvents = True
        End If
    End If
End Sub

je n'ai pas compris quel était ton premier problème. la macro se déclenche quand le contenu de la cellule est confirmé, que ce soit par un clic, la touche entrée ou une des touches flèches.

en gros sur mon fichier avec la macro quand je marque quelque chose quand je valide le seul moyen de mettre la date c'est en re-cliquant sur la cellule

bonjour,

peux-tu mettre ton fichier avec la macro et la séquence des instructions pour reproduire le problème ?

merci

Salut , désolé du temps de réponse ^^'

C'est bon au final c'était moi qui faisais n'importe quoi donc c'est bon c'est niquel merci !

Rechercher des sujets similaires à "ajout date automatique mon texte"