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

Macros et VBA Excel Discussion :

Date de modification d'un Fichier Excel


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Date de modification d'un Fichier Excel
    Bonjour à tous,

    Je suis vraiment toute novice, et je rencontre un gros souci en VBA EXCEL. J'ai récupéré sur le net un programme qui avait pour but d'indiquer la date de modif d'un fichier EXCEL:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If Modif = True Then
    Sheets("feuil1").Range("D1").Value = "Dernière modif le" & Format(Date, "dd/mm/yyyy")
    End If
    End Sub
     
    Private Sub Workbook_Open()
    Modif = True
    End Sub
     
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    Modif = True
    End Sub
    Et je rencontre un problème, la date n'apparait pas en cellule D1 (il n'y a rien, sauf le format qui à l'air d'avoir fonctionné) et je rencontre un bug: Erreur de compilation: Type défini par l'utilisateur non défini pour cette ligne ci: Private Sub Workbook_SheetChange (ByVal Sh As Object, ByVal Target As Range)

    La date n'apparait toujours pas, même après plusieurs, modifs et manips y compris le débogage du message d'erreur. Y a-t-il quelqu'un pour m'aider SVP?

    Merci d'avance à celui ou celle qui pourra m'aider

  2. #2
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    bonjour

    As tu défini ta variable modif sous la forme :

    Public modif as boolean

    Option à mettre en premiere ligne d'un module

    @ te lire
    Wilfried

  3. #3
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Non, mais je viens d'ajouter cette ligne

    public modif as boolean

    au dessus de ce qu'il y avait écrit en ''Module 1'':

    Sub Date_de_modification_MAJ()

    End Sub

    Et ça ne fonctionne toujours pas

  4. #4
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    oui, en fait, en fermant et en ouvrant de nouveau le fichier EXCEL, je me retrouve avec la date, mais aussi cette inscription dans ma cellule D1:

    Date de modification19/06/2007

    Est-il possible de ne pas afficher ''Date de modification'', c'est à dire uniquement la date 19/06/2007?

    Et merci pour ton aide

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    258
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 258
    Points : 306
    Points
    306
    Par défaut
    Je pense que ca vient du mode Value de la formule que tu veux écrire

    Et si tu remplacais .value par .Text, je pense que ca pourrait fonctionner mieux


    Autre solution que j'applique, tu passes par une variable intermédiaire (que j'appelle dateur)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    dim dateur as string
    dateur = "Dernière modif le" & Format(Date, "dd/mm/yyyy")
    Sheets("feuil1").Range("D1") = dateur
    @+

  6. #6
    Membre averti Avatar de mordrhim
    Inscrit en
    Avril 2007
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2007
    Messages : 270
    Points : 314
    Points
    314
    Par défaut
    en reprenant tout

    le code que tu as copié met sur la feuille de code "Thisworkbook"

    ensuite pour supprimer ''Date de modification''

    tu l'enleve dans le code

    soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If Modif = True Then
    Sheets("feuil1").Range("D1").Value = Format(Date, "dd/mm/yyyy")
    End If
    End Sub

  7. #7
    Candidat au Club
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Pour info, la réponse de mordrhim à fonctionnée

    Merci à tous

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

Discussions similaires

  1. [XL-2010] automatiser une date de modif d'un fichier word dans Excel
    Par chevalpm dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/05/2010, 09h00
  2. Changer la date de modification d'un fichier
    Par sylviev dans le forum Langage
    Réponses: 1
    Dernier message: 07/08/2007, 09h58
  3. Comment trouver la dernière date de modification d'un fichier
    Par je®ome dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 24/05/2006, 13h23
  4. Réponses: 20
    Dernier message: 17/03/2005, 15h26
  5. [langage] Date de modification d'un fichier
    Par Cyspak dans le forum Langage
    Réponses: 2
    Dernier message: 24/06/2003, 15h49

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