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

Excel Discussion :

Date automatique une seule fois dans la cellule [XL-2013]


Sujet :

Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 113
    Points : 72
    Points
    72
    Par défaut Date automatique une seule fois dans la cellule
    Bonjour à tous,

    Je cherche le moyen de mettre la date automatiquement dans la cellule A1 lorsque j'entre des données en B1.

    Le problème est que si j'emplois la formule:

    =SI(B2="";"";AUJOURDHUI())
    La date du jour se charge effectivement dans la cellule A1. Je voudrais que le calcul ne se fasse qu'une fois et ne change pas lors du recalcul de la feuille.

    Merci

  2. #2
    Expert éminent
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Points : 7 149
    Points
    7 149
    Billets dans le blog
    7
    Par défaut
    Salut,

    Si ta formule contient la date du jour, alors la valeur va obligatoirement car logiquement évoluer

    Je raisonnerais plus en évènement qu'en formule

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Option Explicit
     
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    With ActiveSheet
        If Target.Address = .Range("B1").Address Then
                .Range("A1").Value = Date
        End If
    End With
     
    End Sub

    Bien Cordialement.

    Marcel

    Dernier billet:
    Suppression des doublons d'un tableau structuré, gestion d'un array

    Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.


  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 113
    Points : 72
    Points
    72
    Par défaut
    Citation Envoyé par MarcelG Voir le message
    Salut,

    Si ta formule contient la date du jour, alors la valeur va obligatoirement car logiquement évoluer

    Je raisonnerais plus en évènement qu'en formule

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Option Explicit
     
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    With ActiveSheet
        If Target.Address = .Range("B1").Address Then
                .Range("A1").Value = Date
        End If
    End With
     
    End Sub
    OK j'essaye
    Merci

  4. #4
    Membre expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 869
    Points : 3 442
    Points
    3 442
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    si c'est toi qui met la veleur en B2 et que tu veux mettre la date du jour à ce moment là, alors moi à ta place dans ce cas j'utiliserai la raccourcis clavier [Ctrl] + [;]

    si c'est dû à un calcul alors il faut passer par une macro comme le propose MarcelG

    A bientôt
    Ils ne savaient pas que c'était impossible ... du coup ils l'ont fait (Mark Twain)

    n'oubliez pas de si les messages vous aide ou sont pertinents et de mettre quand cela est !

  5. #5
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 113
    Points : 72
    Points
    72
    Par défaut
    Merci pour la réponse.

    Voici comment j'ai adapté le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Option Explicit
     
    Private Sub Worksheet_Change(ByVal Target As Range)
        'Pour vider la cellule A1 si on vide la cellule B1
        If Range("A1").Value = "" Then
            Range("B1").Delete   
            Exit Sub
        End If
        With ActiveSheet
            If Target.Address = .Range("A1").Address Then
                .Range("B1").Value = Date
            End If
        End With
    End Sub
    Cela fonctionne exactement comme j'ai besoin.
    Mais, je voudrais que ce code s'adapte pour chaque ligne:
    A2 - B2
    A3- B3
    Et ainsi de suite

    Merci

  6. #6
    Expert éminent
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Points : 7 149
    Points
    7 149
    Billets dans le blog
    7
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    'Pour vider la cellule A1 si on vide la cellule B1
        If Range("A1").Value = "" Then
            Range("B1").Delete
            Exit Sub
        End If
    Euh.. Ce serait plutôt le contraire ici!
    Qui plus est, ce code n'est pas propre.
    Pourquoi en effet ne pas rattacher les objets à la feuille active.
    Je le sais, cet attachement est tacite, mais c'est, à mon avis, une habitude à prendre.

    Pour que l'évènement se réalise sur un ensemble de cellules, il suffit de tester l'appartenance de la cellule modifiée à un champ donné

    (à adapter)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Option Explicit
     
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    If Not (Intersect(Target, ActiveSheet.Range("A1:A30")) Is Nothing) Then
            With Target
                    .Offset(0, 1).Value = IIf(.Value = "", "", Date)
            End With
    End If
     
    End Sub

    Bien Cordialement.

    Marcel

    Dernier billet:
    Suppression des doublons d'un tableau structuré, gestion d'un array

    Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.


  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 113
    Points : 72
    Points
    72
    Par défaut
    Merci,
    J'ai essayé, cela fonctionne à merveille.
    Je dois adapter pour les bonnes colonnes et lignes.
    Je reviendrais vers vous pour confirmation

  8. #8
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 113
    Points : 72
    Points
    72
    Par défaut
    Tout fonctionne sans problème

    Un grand MERCI

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

Discussions similaires

  1. Afficher un message une seule fois dans une boucle infinie
    Par emulienfou dans le forum Langage
    Réponses: 3
    Dernier message: 24/02/2011, 14h12
  2. DBLink utilisable une seule fois dans une session donnée
    Par thatsallfunk dans le forum Administration
    Réponses: 1
    Dernier message: 22/05/2009, 11h01
  3. Réponses: 4
    Dernier message: 06/06/2008, 10h56
  4. Ma requete s'execute qu'une seule fois dans mon curseur
    Par remyescof dans le forum Développement
    Réponses: 5
    Dernier message: 21/03/2008, 09h03
  5. Ma requete s'execute qu'une seule fois dans mon curseur
    Par remyescof dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 21/03/2008, 09h03

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