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 :

Macro ou Vba ? pour qu'un document s'envoie par mail chaque jour


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Par défaut Macro ou Vba ? pour qu'un document s'envoie par mail chaque jour
    Bonjour,

    Je voudrais qu'un document s'envoie automatiquement chaques jours à 16h par mail..

    Pourriez-vous m'indiquer comment faire ?
    Merci d'avance

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Mets cette macro dans le module "ThisWorkbook" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_Open()
        Application.OnTime TimeValue("16:0:0"), "EnvoiDoc"
    End Sub
    Dans un module standard, mets celle-ci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub EnvoiDoc()
        Workbooks.Open "c:\temp\classeur.xlsx"
        Workbooks("classeur.xlsx").SendMail "test@toto.com", "Sujet"
    End Sub
    Tu dois ouvrir le classeur avant 16h. Tu peux utiliser le planificateur de tâches pour ouvrir le classeur.

  3. #3
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Pour ce genre de procédé, il semblerait plus logique de s'orienter vers du VBScript plutôt que du VBA Excel.

    Et de le mettre en tâche planifiée Windows (ce qui éviterait la nécessité d'avoir Excel ouvert au moment du lancement).

  4. #4
    Membre à l'essai
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Par défaut
    Bonjour,
    rectification, ce sera plus simple ainsi je pense..

    Je voudrais qu'un document s'enregistre automatiquement chaques jours à 16h dans un dossier différent (sur le même serveur) avec la date du jour comme nom...

    Un document nous servant à répertorier les malades du jour pour les différents suivis, et donc si cela était possible d'automatiser le fait qu'il s'enregistre chaque jour dans un dossier sur le même serveur avec comme nom la date du jour de manière à ce qu'il ne s'écrase pas à chaque enregistrement.
    Celui-ci se trouve dans : W:\-=Plannif=-\-=MALADES du jour=-
    Et devrait s'enregistrer chaque jour à 16h dans : W:\-=Plannif=-\-=MALADES du jour=-\ARCHIVES
    Fichiers attachés Fichiers attachés

  5. #5
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Pour enregistrer un fichier en donnant un nom de dossier, tu peux utiliser la méthode SaveAs, membre de l'objet WorkBook.

    Personnellement, j'utiliserais plutôt un simple Save (pour remettre à jour le fichier avec les dernières données saisies) suivi d'une copie du fichier lui-même.

    Dans les deux cas, le nom de fichier étant une simple chaîne de caractères, il est possible de la construire comme in souhaite, par exemple avec une racine invariable plus une fonction "date()"

  6. #6
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Bonjour,

    voir aussi la méthode SaveCopyAs


Discussions similaires

  1. Réponses: 2
    Dernier message: 21/05/2015, 12h42
  2. [XL-2013] Simplifier un code macro en VBA pour faire un tri d'une liste personnalisée
    Par phanoulevoyou dans le forum Macros et VBA Excel
    Réponses: 19
    Dernier message: 17/11/2013, 12h23
  3. Réponses: 4
    Dernier message: 08/11/2011, 17h24
  4. Macro ou VBA pour exporter toutes mes feuilles au format *txt
    Par jakadam dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/08/2011, 01h58
  5. Réaliser une macro en VBA pour excel afin de créer un graphe
    Par xavier le breuil dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 04/12/2005, 14h41

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