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 :

Fonction Workday Inutilisable [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Fonction Workday Inutilisable
    Bonsoir,

    J'essaye désespérément d'utiliser la fonction Workday sous Excel 2007, j'ai lu pleins de topics disant qu'il y avait eu des fonctions autrefois non native qui ont été automatiquement intégré et que du coup ça ne fonctionne plus comme ça fonctionnait avant mais n'ayant pas eu l'occasion de travailler sur Excel 2003 et de constater cela, toutes les explications qui sont données me semble bien flou et au final bah j'arrive juste pas à ce que je veux.

    Concrètement, j'aimerai pouvoir utiliser workday ou une fonction du même type qui me permettrait de calculer les retards ou jours d'avances avec des jours ouvrables. J'aimerais pouvoir utiliser le code dans mes macros et non taper les formules dans la feuille. Enfin il serait préférable que cela soit compatible aussi bien avec 2007 que 2003.

    Première question est-ce possible?
    Si oui comment m'y prendre?

    J'ai pu lire une histoire de WorksheetsFonction pour que ça fonctionne directement dans la macro sous 2007, ce qui répondrait à mes attentes mais ça n'est pas compatible 2003...

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 171
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    WorkDay est à utiliser avec WorksheetFunction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     MsgBox Format(WorksheetFunction.WorkDay(Date, 15), "dddd d, mmmm yyyy")
    Fonctionne sous 2010 (j'ai testé) et normalement sous 2007 mais pas certain en 2003 parce-que cette fonction était utilisable avec l'utilitaire d'analyse sous cette version.
    [EDIT]
    Je confirme que cela fonctionne en 2007 et pas en 2003 (avec WorksheetFunction). Il y a peut-être un add-on a activer parce-qu'effectivement d'autres se plaignent du même problème (fonctionne en 2003 et pas en 2007)
    Toutefois regarde cette discussion sur le même sujet, sans doute une piste
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Invité
    Invité(e)
    Par défaut
    Punaise c'est bien ce que je pensais, autant l'utiliser indépendamment ce serait pas un problème mais étant donné leur fonctionnement totalement différent faire en sorte que ce soit compatible sur les deux c'est autre chose :/

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 171
    Billets dans le blog
    53
    Par défaut
    Bonjour,

    Tu peux écrire une fonction qui utilise la fonction adéquate suivant le numéro de version.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     Select Case Int(Val(Application.Version))
      Case Is >= 12 ' 2007-2010
       MsgBox "Version supérieure à 2003"
      Case Else
       MsgBox "Version 2003 ou inférieure"
     End Select
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  5. #5
    Invité
    Invité(e)
    Par défaut
    Ok merci, avec ça je devrais pouvoir bidouiller un truc qui marche

    Encore merci

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

Discussions similaires

  1. [OL-2010] Fonction WORKDAY dans Outlook via VBA
    Par bundy_al01 dans le forum VBA Outlook
    Réponses: 4
    Dernier message: 16/05/2015, 11h57
  2. Fonction rechercher inutilisable
    Par Denis.vila dans le forum Excel
    Réponses: 0
    Dernier message: 06/11/2013, 19h00
  3. Comment avoir accès à la fonction WORKDAY dans VBA?
    Par ac264 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/02/2010, 12h13
  4. Fonction workday sur Ms Access
    Par amne26 dans le forum Modélisation
    Réponses: 1
    Dernier message: 05/09/2008, 22h40
  5. fonction javascript inutilisables apres un document.write?
    Par Vesta dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 29/11/2005, 02h13

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