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 :

mémorisation date saveas


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 107
    Par défaut mémorisation date saveas
    Bonjour
    Je cherche à effectuer une macro qui actualise un powerpoint blabla2008-03-03.ppt une fois par semaine via excel.
    Cette macro effectue des modifications, et je veux enregistrer le fichier sous la date du jour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .SaveAs ("P:\blabla" & Format(Now, "yyyy-mm-dd") & "essai.ppt")
    Jusque là pas de probleme…
    Mais je voudrais qu’à la prochaine actualisation, la macro m’ouvre la derniere version de l’actualisation donc, par exemple blabla2008-03-10, et ceci de semaine en semaine …Donc je suppose que, il faut mémoriser la date.
    Je ne vois pas trop comment faire…quelqu un aurait il une idee ?

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Si nécessaire, regarde à DateAdd, dans l'aide pour comprendre ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub test()
    MsgBox DateAdd("ww", -1, Now)
    End Sub

  3. #3
    Membre confirmé
    Inscrit en
    Février 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 107
    Par défaut
    très intéressant comme fonction...
    Néanmoins, l'actualisation ne s'effectue pas toutes les semaines le même jour...Pour retenir la date de la derniere fois que l'on a lancé la macro, il n'ya aucun moyen?

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2007
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 491
    Par défaut
    bonjour,

    je ne sais pas ce que tu veux faire exactement mais tu peux enregistrer la date de la mise a jour du ppt dans une cellule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    .SaveAs ("P:\blabla" & Format(Now, "yyyy-mm-dd") & "essai.ppt")
    cells(1,1) = Format(Now, "yyyy-mm-dd")
    et a l ouverture d xl tu recupère la derniere mise a jour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dern_fichier = cells(1,1)

  5. #5
    Membre confirmé
    Inscrit en
    Février 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 107
    Par défaut
    l'idée me paraît être la bonne, mais apparemment ça ne marche pas...
    En fait, je met bien la date actuelle dans le excel sous la forme yyyy-mm-dd
    mais, j crois que ça ne marche pas parce que ça a l'air de me le convertir automatiquement sous la forme dd/mm/yyyy.
    Du coup, après quand je rappelle cette cellule, et bien ça ne trouve pas le fichier que je veux ouvrir

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Un autre solution consisterait à effectuer une boucle sur les fichiers du répertoire et de tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Instr(NomFich, Format(DateAdd("ww", -1, Now), "yyyy-ww"))<> 0 then
    Pour tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub test()
    If InStr("Blabla" & "2008-10", Format(DateAdd("ww", -1, Now), "yyyy-ww")) <> 0 Then MsgBox "ok"
    End Sub
    La boucle en prime
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Tester()
        With Excel.Application.FileSearch
            .NewSearch
            .LookIn = "D:\xls" 'A adapter (!)
            .SearchSubFolders = True
            .Filename = "*.xls"
            If .Execute() > 0 Then
                For i = 1 To .FoundFiles.Count
                    If InStr(.FoundFiles(i), Format(DateAdd("ww", -1, Now), "yyyy-ww")) <> 0 Then _
                        MsgBox "C'est lui !"
                Next i
            End If
        End With
    End Sub

  7. #7
    Membre confirmé
    Inscrit en
    Février 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 107
    Par défaut
    effectivement, ça a l air d'être une bonne méthode
    et l'autre méthode marche, même si elle me plante encore a cause du SaveAs quand je fais ptDoc.close
    mais le fichier est bien reconnu donc merci a tous les 2 pour vos réponses...
    n'empêche que, a cause ou grâce? à tous les problèmes que j'ai et à vos réponses, j'apprends plein de choses
    merci encore

  8. #8
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    elle me plante encore a cause du SaveAs quand je fais ptDoc.close
    Où ça ? Mets ton code incluant les deux (saveas et close)

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

Discussions similaires

  1. [OL-2010] saveas + adresse émetteur + date d'envoi
    Par fclus dans le forum VBA Outlook
    Réponses: 2
    Dernier message: 30/04/2014, 10h39
  2. Saveas avec une date
    Par liop49 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/02/2009, 14h54
  3. Generation d'evenements a une date precise
    Par pascalzzz dans le forum MFC
    Réponses: 2
    Dernier message: 04/06/2002, 15h21
  4. Réponses: 3
    Dernier message: 06/05/2002, 18h24
  5. Réponses: 3
    Dernier message: 19/04/2002, 00h11

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