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 FormulaLocal non valide ! Pourquoi ?


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut Fonction FormulaLocal non valide ! Pourquoi ?
    Bonjour à tous,

    Merci d'avance de l'aide que vous voudrez bien m'apporter. Mon niveau en VBA est proche du 0.

    Voici la formule que je souhaiterais intégrer dans mon code VBA toutefois ça ne fonctionne pas pourquoi ?

    2 essais :

    Le premier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ABC.FormulaLocal = "=GAUCHE(D2;CHERCHE(" "; D2; 1) - 1)"
    .Cells(DerL, 8) = ABC.Text
    Le second :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Cells(DerL, 8) = Left(Auteurs.Text, Search(" ", Auteurs.Text, 1) - 1)
    Mais la formule ne fonctionne pas à cause de Search j'ai essayé de remplacer par find mais ça ne fonctionne pas non plus pourquoi ?

    Auriez vous des solutions à me soumettre.

    Merci d'avance

    Bonne soirée

    Vincent

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim ABC As String
     
    ABC = "=GAUCHE(D2;CHERCHE("" ""; D2; 1) - 1)"
    Cells(1, 8).FormulaLocal = ABC

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut
    Bonjour,

    Merci pour cette aide, cependant la solution que vous me proposez ne fonctionne pas, en effet cela m'indique dans la cellule de destination :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =GAUCHE(Auteurs.Text;CHERCHE("" ""; Auteurs.Text; 1) - 1)
    à noter que j'ai essayé de modifier ma valeur source (alias Auteurs.Text) par une cellule bien déterminée (en l'occurence E2).

    Est ce que le problème ne viendrait pas soit de la déclaration de la variable :
    string?

    soit de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(DerL, 8).FormulaLocal = ABC
    Ne faut il pas ajouter ABC.Text à la fin ?

    Merci d'avance de votre aide, bonne journée

    Cordialement

    Vincent

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    C'est quoi Auteurs, ABC...?

  5. #5
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut
    Bonjour,

    Il s'agit en fait du nom de variables (entre autres de données saisies par l'utilisateur dans des textbox).

    Le but de la manipulation est de récupérer le premier nom d'une liste exemple :

    Dans la textbox nommée "Auteurs" l'utilisateur saisi la liste des auteurs :
    Babar ; Mickey ;...

    Et je souhaite récupérer le premier nom c'est à dire dans notre cas : Babar

    J'espère avoir été le plus explicite possible

    Cordialement

    Vincent

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Tes auteurs sont séparés par un point-virgule?

  7. #7
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut
    Bonjour,

    En fait mes auteurs seront entrés dans la textbox de la manière suivante :

    Auteurs : Einstein A. ; Volta A. ; Newton I. ; Ampère AM.


    Et je souhaite récupérer : Einstein (à noter que "Auteurs : " correspond au label devant ma textbox (et cette même textbox a pour nom "Auteurs").

    Le but étant de récupérer dans une cellule (dernière ligne, colonne définie) l'emsemble des auteurs indiqués dans la textbox (de manière très classique) et sur la même ligne dans une autre colonne le nom de l'auteur principal.

    Le raisonnement que j'ai eu a été : extraire la chaine de caractère jusqu'au premier espace.

    Cordialement,

    Vincent

  8. #8
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cells(derlig, 8).value=split(Auteurs.text, " ")(0)

  9. #9
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut
    Bonsoir,

    Merci beaucoup pour cette aide, ta technique fonctionne, pourrais tu cependant m'expliquer pourquoi le .Value est nécessaire et pourquoi (0) à la fin ?

    Encore merci

    Cordialement

    Vincent

    PS comment inséré "RESOLU" dans l'intitulé du message ?

  10. #10
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    F1 sur split

    on peut l'écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim tablo
    tablo=split(Auteurs.txt, " ")
    cells(DerLig,8)=tblo(0)
    split(TEXTE, SEPARATEUR)
    split retourne un tableau de chaines qui sont séparés dans le texte original TEXTE par le séparateur SEPARATEUR
    Le Value, c'est question d'habitude

  11. #11
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut
    Ok,

    Merci beaucoup

    Bonne journée

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

Discussions similaires

  1. fonction sum non valide
    Par DzBadBoy dans le forum VBA Access
    Réponses: 8
    Dernier message: 06/08/2010, 16h37
  2. Réponses: 1
    Dernier message: 03/06/2009, 09h28
  3. [AJAX] Fonction non reconnue.. pourquoi?
    Par yann.morineau dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/02/2009, 08h32
  4. [SQL] Résultat de fonction php non valide dans requête SQL
    Par darksnake dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/12/2007, 13h44
  5. [XSD][IE] accepte un XML non valide, pourquoi ?
    Par ghostdog dans le forum Valider
    Réponses: 3
    Dernier message: 15/02/2007, 15h24

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