XL 2016 Date automatique figée

Lucio

XLDnaute Junior
Bonsoir, j'aimerais savoir comment pouvoir avoir une date figée automatique en G1 quand A1 est inscrit de chiffres ?
De plus, j aimerais également pouvoir insérer une date auto figée en H1 quand B1,C1,D1, ou E1 est inscrit d'un texte.
Merci de votre aide.
 

dg62

XLDnaute Barbatruc
Bonjour le fil,

Un code à adapter à votre besoin
si une saisie à lieu dans la colonne A, la date s'affiche dans la cellule correspondante en G
VB:
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

        If Not Intersect(Target, Range("A2:A100")) Is Nothing Then

            With Target(1, 7)

                .Value = Date

              
            End With

        End If

End Sub
 

dg62

XLDnaute Barbatruc
Une version mieux adaptée

VB:
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

        If Not Intersect(Target, Range("A1")) Is Nothing Then

            With Target(1, 7) 'G1
           
            If IsNumeric(Target) Then .Value = Date
           
            End With

        End If
       
        If Not Intersect(Target, Range("B1:E1")) Is Nothing Then
        

            If Not IsNumeric(Target) Then Range("H1").Value = Date
           
           
        End If

End Sub
 

Pièces jointes

  • date figée.xlsm
    14.8 KB · Affichages: 6
Dernière édition:

Lucio

XLDnaute Junior
Bonjour le fil,

Un code à adapter à votre besoin
si une saisie à lieu dans la colonne A, la date s'affiche dans la cellule correspondante en G
VB:
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

        If Not Intersect(Target, Range("A2:A100")) Is Nothing Then

            With Target(1, 7)

                .Value = Date

             
            End With

        End If

End Sub


merci c est top
 

dg62

XLDnaute Barbatruc
Re,
Si la cellule A1 est vide la procédure n'inscrit pas La date et il faut respecter la casse, "Fini". Ça peut être changé dans le code.
Pour le reste il faut fournir la totalité des contraintes. Le code ne sera pas le même.
un classeur avec le résultat attendu et les contraintes.
 
Dernière édition:

Lucio

XLDnaute Junior
Re,
Si la cellule A1 est vide la procédure n'inscrit pas La date et il faut respecter la casse, "Fini". Ça peut être changé dans le code.
Pour le reste il faut fournir la totalité des contraintes. Le code ne sera pas le même.
un classeur avec le résultat attendu et les contraintes.
Ton exemple est sur une ligne. comment faire pour plusieurs ligne? Peux-tu m'aiguiller?
 

dg62

XLDnaute Barbatruc
Bonjour Lucio
Un exemple pour travailler sur des plages

VB:
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

        If Not Intersect(Target, Range("A1:A100")) Is Nothing Then
            If IsNumeric(Target) Then Target.Offset(1, 7).Value = Date ' Colonne G
        End If
       
        If Not Intersect(Target, Range("B1:E100")) Is Nothing Then
            If Target.Value = "FINI" Then Target.Offset(1, 8).Value = Date 'Colonne H
        End If

End Sub
 
Dernière édition:

Discussions similaires

Réponses
17
Affichages
953
Réponses
5
Affichages
357

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof