Excel 2003

jclaudej -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Dans Excel 2003, comment écrire automatiquement une date dans une cellule adjacente à une cellule modifiée.
Par exemple :
Si dans la cellule A1 pas de valeur => cellule B1 => vide
Si dans la cellule A1 une valeur => cellule B1 => date du jour d'écriture de la valeur A1

Merci d'avance pour votre aide

Jclaudej
Configuration: Windows XP
Firefox 3.0.3

7 réponses

  1. gouby Messages postés 386 Date d'inscription   Statut Contributeur Dernière intervention   6 491
     
    bonjour

    a mon avis tu le fais avec la fonction Si
    0
  2. jclaudej
     
    Je n'en doute pas mais comment :)
    0
  3. gouby Messages postés 386 Date d'inscription   Statut Contributeur Dernière intervention   6 491
     
    pour la date automatique : =MAINTENANT()

    pour la fonction si : Fonction définition

    a voir aussi : Ajouter une date fixe dans une cellule
    0
  4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    ça serait =si(A1="";"";aujourdhui())
    Le problème c'est que demain aujourdhui() sera égal au 25/10/08...
    Donc non faisable par formule puisque tu veux la date du jour d'écriture
    Soit utiliser le raccourci clavier ctrl+; pour marquer la date du jour sans qu'elle évolue le lendemain,
    faire par macro vba,
    ou beaucoup mieux : utiliser le suivi des modifications, menu 'outils / suivi des modifications / afficher les modifications....'. Tu auras la date, l'heure, l'ancienne valeur, et par qui elle a été modifiée. Il faut positionner la souris sur la cellule pour afficher.

    eric
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jclaudej
     
    pour commencer, merci à vous tous pour votre aide.

    Dommage que la fonction :
    =si(A1="";"";aujourdhui()) ne fige pas la date à celle de l'écriture ou de la mise à jour de la cellule adjacente.
    Pour ce qui est de la macro VBA, je ne sais pas faire donc retour à la case départ.
    0
  7. jclaudej
     
    Par contre :
    =si(A1="";"";maintenant())
    devrait conserver la date du jour de l'écriture ou de la modification !
    Je test et je vous informe ensuite.

    @ +
    0
  8. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    et le suivi des modif non plus ?
    en vba alors :
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Intersect(Target, Union([A1:A3], [D1:D3])) Is Nothing Then Exit Sub
        Target.Offset(0, 1).Value = Date
    End Sub

    Dans Union([A1:A3], [D1:D3]) tu mets toutes les plages que tu veux superviser.
    Dans .Offset(0, 1) tu défini le décalage où coller la date. Ici même ligne, 1 cellule à droite de la cellule modifiée.

    Clic-droit sur l'onglet de la feuille concernée, 'visualiser le code...', et coller le code dans la fenetre de droite

    eric
    0