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 :

Mettre des fonctions excel dans une variable [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    791
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 791
    Points : 688
    Points
    688
    Par défaut Mettre des fonctions excel dans une variable
    C'est surement un probleme archi basique mais je n'arrive pas a trouver la bonne formulation

    je voudrais mettre dans une variable le nom du fichier de facon dynamique

    Pour le moment, j'ai le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
             Range("E2") = "=Mid(CELL(""FILENAME"", A1), Search(""["", CELL(""FILENAME"", A1)) + 1, Search(""]"", CELL(""FILENAME"", A1)) - Search(""["", CELL(""FILENAME"", A1)) - 1)"
             parametreclasseur = Range("E2")
             Range("E2").Clear
    Ca fonctionne mais c'est pas propre et c'est ridicule.
    Je peux surement mettre directement la formule das la variable non?

  2. #2
    Membre actif
    Inscrit en
    Août 2009
    Messages
    284
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Août 2009
    Messages : 284
    Points : 283
    Points
    283
    Par défaut
    Je suis pas sur que ce soit ce que tu veuilles mais si tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    parametreclasseur= worksheetfunction.mid(...)
    ça ne marche pas?

  3. #3
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Bonjour

    Pour avoir le nom du classeur

    pour le fichier, on ajoute l'extension
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Name & ".xls"

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    791
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 791
    Points : 688
    Points
    688
    Par défaut
    non
    si je fais ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    parametreclasseur = WorksheetFunction.Mid(CELL("FILENAME", A1), Search("[", CELL("FILENAME", A1)) + 1, Search("]", CELL("FILENAME", A1)) - Search("[", CELL("FILENAME", A1)) - 1)
    il boude sur le premier CELL, avec comme message d'erreur "Sub or Function not defined"

    [edit]jfontaine, intéressant ca, mais par contre, je n'ai pas l'assurance que l'extension soit .xls

    je met le nom de classeur en variable pour s'assurer que si les utilisateurs le sauvergarde ailleurs, ma macro continue a marcher.
    Mais je n'ai pas de moyen de les forcer a utiliser un format particulier, non?
    D'autant que les offices 2007 cotoient pour le moment les office 2003

  5. #5
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Excuse, je n'avais pas fais attention, mais
    retourne bien l'extension si le fichier est enregistré

  6. #6
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    791
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 791
    Points : 688
    Points
    688
    Par défaut
    super, merci beaucoup
    C'est quand meme largement plus correct comme ca qu'avec ma solution bancale

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

Discussions similaires

  1. [XL-2007] Stocker le résultat d'une fonction d' excel dans une variable en vba
    Par zak-mouk dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/06/2015, 14h02
  2. Mettre des valeurs entrees dans une variable
    Par moricelapin dans le forum Débuter
    Réponses: 3
    Dernier message: 26/11/2013, 01h03
  3. Réponses: 9
    Dernier message: 17/10/2005, 11h44
  4. Mettre un code php dans une variable...
    Par kedare dans le forum Langage
    Réponses: 6
    Dernier message: 19/09/2005, 13h55
  5. Insérer des données Excel dans une base Access ?
    Par MaTHieU_ dans le forum Access
    Réponses: 3
    Dernier message: 22/06/2005, 16h11

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