Effectuer un macro sans toucher à Excel Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Y
YoniK
Membre habitué
Membre habitué
Messages : 71
Appréciation reçue : 1
Inscrit le : 14 octobre 2019
Version d'Excel : 2016

Message par YoniK » 9 janvier 2020, 13:38

Bonjour,

Je voudrais savoir si il existait un moyen de laisser une macro en veille (classeur fermé), et qu'elle s'active au moment au moment ou elle rencontre une condition. La condition pourrait être une cellule d'une colonne = 0

Merci de votre attention,
Avatar du membre
Pedro22
Passionné d'Excel
Passionné d'Excel
Messages : 3'901
Appréciations reçues : 395
Inscrit le : 26 janvier 2017
Version d'Excel : 2010 FR
Version de Sheets : FR
Téléchargements : Mes applications

Message par Pedro22 » 9 janvier 2020, 13:50

Bonjour,

La question parait saugrenue... Je vois mal comment une macro pourrait fonctionner si le classeur qui la contient est fermé, à moins de créer une macro complémentaire, comme le pack de fonctions proposé sur ce site.

Ne m'en demande pas plus, c'est un domaine que je ne maîtrise absolument pas !
Merci de prendre 30 sec pour lire la charte du forum.
Quelques conseils : ici
Y
YoniK
Membre habitué
Membre habitué
Messages : 71
Appréciation reçue : 1
Inscrit le : 14 octobre 2019
Version d'Excel : 2016

Message par YoniK » 9 janvier 2020, 13:56

Il s'agirait d'un fichier qui utiliserait des fonctions "=aujourd'hui()", lorsque la soustration d'un jour et de aujourd'hui = 0 alors lancer un alerte par mail (ça j'ai réussis).

Mais pour ça j'ai besoin que la macro soit lancé quotidiennement sans que l'utilisateur n'ai besoin d'ouvrir le fichier en question
Avatar du membre
bigdaddy154
Membre impliqué
Membre impliqué
Messages : 1'205
Appréciations reçues : 47
Inscrit le : 5 mars 2014
Version d'Excel : 2010

Message par bigdaddy154 » 9 janvier 2020, 14:23

Bonjour tout le monde,

comme ça je dirais un fichier VbScript que tu lances via le planificateur de tâches de Windows.

Du genre :
On Error Resume Next
Dim AppExcel
Dim Fichier
Fichier = "C:\Test\Test.xlsb"
Set AppExcel = WScript.CreateObject("Excel.Application")
AppExcel.Visible = False
AppExcel.DisplayAlerts = False 
AppExcel.Workbooks.Open (Fichier)
AppExcel.Application.Run "Test.xlsb!MacroMAJ"
AppExcel.Fichier.close (False)
AppExcel.Application.Quit
Set AppExcel = Nothing
WScript.Quit
Cordialement.
Y
YoniK
Membre habitué
Membre habitué
Messages : 71
Appréciation reçue : 1
Inscrit le : 14 octobre 2019
Version d'Excel : 2016

Message par YoniK » 9 janvier 2020, 14:30

Je ne connais pas ce genre de VBA, je suis habité au sub ^^

Pourrais tu me dire comment et/ou où intégrer ton code et si il a des choses à adapter (à part l'emplacement du fichier C:\...)

Merci pour ta réponse déjà ^^
Avatar du membre
bigdaddy154
Membre impliqué
Membre impliqué
Messages : 1'205
Appréciations reçues : 47
Inscrit le : 5 mars 2014
Version d'Excel : 2010

Message par bigdaddy154 » 9 janvier 2020, 14:54

Copie le code dans une session de notepad par exemple tu enregistres le fichier au format VbScript qui est .vbs

Tu as à modifier ces 2 lignes :

Le chemin de ton fichier
Fichier = "C:\Test\Test.xlsb"
Et le nom du fichier et celui de ta macro :
AppExcel.Application.Run "Test.xlsb!MacroMAJ"
Te restes ensuite à créer ta tâche sous le planificateur de Windows pour la lancer quand tu as envie.

Cordialement.
Y
YoniK
Membre habitué
Membre habitué
Messages : 71
Appréciation reçue : 1
Inscrit le : 14 octobre 2019
Version d'Excel : 2016

Message par YoniK » 9 janvier 2020, 16:10

Impossible d'enregistrer le fichier excel sous le format .xlsb :/

Sinon qu'entends tu par "Te restes ensuite à créer ta tâche sous le planificateur de Windows pour la lancer quand tu as envie."

Un noobie :P
Y
YoniK
Membre habitué
Membre habitué
Messages : 71
Appréciation reçue : 1
Inscrit le : 14 octobre 2019
Version d'Excel : 2016

Message par YoniK » 9 janvier 2020, 16:17

Le format .xlsb du fichier excel est-il obligatoire ou un format .xlsm est possible ?
Avatar du membre
bigdaddy154
Membre impliqué
Membre impliqué
Messages : 1'205
Appréciations reçues : 47
Inscrit le : 5 mars 2014
Version d'Excel : 2010

Message par bigdaddy154 » 9 janvier 2020, 16:22

Ça doit fonctionner en .xlsm aussi y a pas de raison.
Pour le planificateur de tâche.

https://www.pcastuces.com/pratique/astuces/4245.htm

Cordialement
Y
YoniK
Membre habitué
Membre habitué
Messages : 71
Appréciation reçue : 1
Inscrit le : 14 octobre 2019
Version d'Excel : 2016

Message par YoniK » 9 janvier 2020, 16:32

OK le code marche je te remercie !
Je vais me dépatouiller pour le reste, gros gg
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message