Formule à appliquer existe en texte dans une cellule à part

Résolu
CactusDrummer -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

L'exemple simple :
je met 1 en A1
je met 2 en A2

dans A3 j'écris a1+a2
dans A4 j'écris =a3

Il va me rendre dans la cellule A3 : "a1+a2" , alors que j'aimerais qu'il comprenne "je veux que tu me calcules la valeur de A1 plus la valeur de A2" , donc que le résultat soit 3

En réel, j'ai concaténé du texte pour obtenir un lien complet en cellule A1 style " 'dossier\[nomfichier.xlsx]onglet'!B4 " ... et je veux pouvoir faire un " =A1 qui me rendre la valeur contenue dans la cellule du fichier excel "nomfichier" ...

Comment je peux faire ca ?

Merci d'avance

4 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    Je ne sais pas si on peut se passer de macro, mais voilà une solution simple pour la première partie de ta question, via vba
    https://www.cjoint.com/?3GrrAeZajt8

    Cordialement
    0
  2. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    si on se réfère à la 1° partie de la question, =A1+A2 font l'affaire,puisque la formule donnera bine 3 en A3 mais il n'y a aucune correspondance avec la deuxième partie, qui elle, nécessiterait quelques explications complémentaires
    A vous lire?
    0
  3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    pourquoi tu écris : je met 1 en A1
    et plus bas :
    En réel, j'ai concaténé du texte pour obtenir un lien complet en cellule A1 style " 'dossier\[nomfichier.xlsx]onglet'!B4 " ...

    Juste pour embrouiller sinon l'explication était trop simple ?
    Sinon dépose un fichier.

    eric
    0
  4. CactusDrummer
     
    Bonjour, et merci à tous de votre intéret :) .

    J'ai vraiment fouillé le web et je n'ai rien trouvé, mais expliquer le problème est difficile pour moi.

    Tout d'abord, eriiic , je m'excuse de pas avoir été clair .
    Le fait est que j'ai 2 problèmes, mais les deux sont liés. Je vais réexpliquer plus calmement.

    je met 1 en A1 
    je met 2 en A2
    dans A3 j'écris a1+a2
    dans A4 j'écris =a3
    Il va me rendre dans la cellule A4 : "a1+a2" , alors que j'aimerais qu'il comprenne "je veux que tu me calcules la valeur de A1 plus la valeur de A2" , donc que le résultat soit 3

    Voici pour la première partie. Je me suis trompé en décrivant le problème. Je veux que quand je mette "=A3" (et en A3 j'ai le texte "a1+a2" ) il aille faire l'opération écrite en texte dans la cellule A3 , soit "1 + 2" , donc rendre "3" .

    Pour mon 2e problème c'est sensiblement la même chose, sauf que le contenu de la cellule A3 serait une construction d'un lien vers une référence à une cellule dans un autre fichier excel. Exemple :
    =CONCATENER(A1;A2;"[amandine.xlsx]Page1_1'!$E$7")
    Qui devrait afficher au final 'C:\\dossier1\dossier2\[amandine.xlsx]Page1_1'!$E$7"

    Je ne peux pas vous poster d'exemple pour le moment, mais si nécessaire je vous fais cela demain.
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Si tu veux en A4 le résultat de l'évaluation de la formule en A3 ça ne peut être fait que par macro.
      En vba :
      Function eval(cellule As Range) As Variant
          eval = Evaluate(cellule.Value)
      End Function

      Sans doute valable aussi pour ton pb 2, que tu pourrais aussi faire avec =indirect(A3)
      https://www.cjoint.com/?DGsqFJSNp5e

      eric
      0
    2. CactusDrummer
       
      Merci Eric.

      La fonction VB fonctionne .
      La technique de la fonction "INDIRECT" (que je ne connaissais pas) fonctionne pas mal aussi. Je dois pouvoir combiner ceci avec STXT() , GAUCHE() , ou DROITE() pour me passer de VB. Ca complexifie la formule de base mais j'évite ainsi de prendre en charge les macros.

      Je marque le sujet comme résolu, merci encore !
      0
    3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Si c'est pour évaluer une formule et non une référence tu es obligé de passer par une macro. Que ce soit en vba ou en Excel4.
      eric
      0