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 :

Insertion automatique d'une date


Sujet :

Excel

  1. #1
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    422
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 422
    Points : 174
    Points
    174
    Par défaut Insertion automatique d'une date
    Bonjour,
    Je travaille sur un doc excel, mais voilà bien longtemps que je n'ai plus fait de macro.
    Je voudrais, avant qu'un fichier excel soit enregistré, insérer une date du jour dans une cellule ( format MM/AAAA ), pour toutes les lignes d'un tableau. ( le tableau peut comporter plus ou moins de lignes )
    Ce document doit être envoyé à des clients pour qu'ils saisissent eux mêmes les infos. Pas question de modifier quoique ce soit dans leur menus excel par exemple, je veux faire cette macro uniquement pour ce document.

    Quelqu'un peut m'aider svp.

  2. #2
    Membre émérite Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Points : 2 662
    Points
    2 662
    Par défaut
    Bonjour,
    Si tu veux que la date soit dynamique tu peux simplement mettre la formule
    Sinon le code ci-dessous dans Thisworkbook - Before save (pour coller à ton explication)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub testDate()
     
    'NbLigne compte le nombre de ligne sur base de la colonne B
    NbLigne = Application.Subtotal(3, Sheets("sheet1").Range("b:b"))
    'Applique le format mm/yyyy sur la colonne A
    Columns(1).NumberFormat = "mm/yyyy"
     
    'Défini la boucle de la ligne 2 à la dernière ligne
    For i = 2 To NbLigne
     
        'Indique la date du jour dans la cellule variable de la colonne A
        Cells(i, 1) = Date
     
    Next i
     
    End Sub
    En espérant que ce soit ce que tu cherches.

  3. #3
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    422
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 422
    Points : 174
    Points
    174
    Par défaut
    Merci, je ne l'ai pas encore testé, mais ca m'a l'air plutot très bien !

  4. #4
    Membre habitué
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    422
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 422
    Points : 174
    Points
    174
    Par défaut
    Merci, ca m'a beaucoup aidé ! Cela dit, je n'ai pas compris comment était calculé nbligne, donc j'ai tapé le code suivant, et ca a l'air de fonctionner.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Columns(2).NumberFormat = "mm/yyyy"
    j = 7
    Do
    If Range("D" & j).Value <> "" Then
    Cells(j, 2) = Date
    j = j + 1
    Else
    Exit Do
    End If
    Loop
    Une réserve cependant... Pour l'instant, ma colonne de date étant de type date, lorsque j'essaie de la reporter sur une autre celulle, en tapant par exemple dans la formule, =B7 ( B7 étant la celulle date ), excel me ressort une valeur différente...

    Quelques minutes plus tard...
    Bon, j'ai trouvé, en fait il fallait que je cherche un peu...
    J'ai remplacé
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(j, 2) = Format(Date, "mm/yyyy")
    et ca fonctionne !

    Merci beaucoup pour ton aide.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/04/2007, 17h08
  2. Réponses: 3
    Dernier message: 03/11/2006, 15h30
  3. insertion manuelle d'une date dans TDateTimePicker
    Par nopnop dans le forum Delphi
    Réponses: 2
    Dernier message: 27/07/2006, 21h52
  4. [VBA-E]insertion automatique d'une ligne dans un tableau
    Par janus82 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 06/04/2006, 15h42
  5. [MySQL] Refresh automatique d'une date
    Par glloq8 dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 21/10/2005, 10h16

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