Rechercher Remplacer dans une formule par une macro
Bonjour à tous,
C'est ma première fois sur ce forum pour poster un sujet alors je vous remercie d'avance d'avoir pris le temps de me répondre.
J'ai beau avoir chercher encore et encore sur le net dans tous les forums possible, je n'arrive pas à trouver l'application exacte de ce que j'aimerais faire.
Ci-joint mon fichier pour vous montrer ce qui est fait et ce qu'il y a à faire.
Sur mon onglet Amortissements 07.15, j'aimerais faire une macro afin d'automatiser une série d'action.
Voici les actions à faire (ma macro basique existe déjà - série d'action enregistrée d'après le menu Enregistrer une macro, mais elle ne fonctionne pas, elle s'appelle Extourne) :
- Sélectionner la colonne montant, Ctrl H, Remplacer =A par =-A, Remplacer tout afin de changer le signe de toute la colonne sans rajout de colonne ou passer par une formule
- Sélectionner la colonne libellé, Ctrl H, Remplacer ("Amort par ("Ext Amort, Remplacer tout, puis rempacer (Base par ("Ext ";Base, Remplacer tout afin de mettre Ext devant le libellé
- Sélectioner U6:U7, Ctrl H, Remplacer SOMME par -SOMME, Remplacer tout afin de changer le signe de l'addition
Voilà pour la macro souhaitée. Quand je fais la série d'action pour enregistrer la macro, cela marche, mais quand je lance la macro avec mon bouton Extourne, cela ne fait rien excepter la partie ("Amort qui devient ("Ext Amort.
Si quelqu'un peut m'aider à faire fonctionner cette macro, ou à un idée pour la faire différement, ce serait super.
Merci à tous pour vos instants de réflexion sur mon sujet.
J'espère avoir été explicite.
Bonne journée à tous
Bonjour et bienvenue sur le forum
Changer le signe des résultats de la colonne Q ne pose pas de problème. Il suffit de rajouter ‘’(-1)*’’ dans la formule.
Ce que fait la version ci-joint.
En revanche, il est plus difficile de de changer le résultat d’une partie de la réponse que renvoie la formule que est en colonne M. Sauf à supprime la formule pour ne conserver que la valeur. On pourra alors remplace ‘’Amort’’ par ‘’Ext Amort’’
Mais alors, s’il n’y a plus de formule, il n’y aura plus de ‘’Base ‘’ à remplacer par ‘’Ext ‘’
Bye !
gmb a écrit :Bonjour et bienvenue sur le forum
Changer le signe des résultats de la colonne Q ne pose pas de problème. Il suffit de rajouter ‘’(-1)*’’ dans la formule.
Ce que fait la version ci-joint.
En revanche, il est plus difficile de de changer le résultat d’une partie de la réponse que renvoie la formule que est en colonne M. Sauf à supprime la formule pour ne conserver que la valeur. On pourra alors remplace ‘’Amort’’ par ‘’Ext Amort’’
Mais alors, s’il n’y a plus de formule, il n’y aura plus de ‘’Base ‘’ à remplacer par ‘’Ext ‘’
Bye !
Merci gmb pour ta réponse ! Ca m'aide pour la première partie, ta macro marche bien ! Par contre, le but n'est pas de changer le résultat, mais bien la formule, je voudrais simplement rajouter une partie à la concaténation, je ne veux pas remplacer Base par Ext, mais je veux qu'avant la partie Base, il me rajoute Ext. Je ne sais pas si cela change quelque chose ou non ... Dans le pire des cas, je ferais comme tu dis un copier coller valeur, mais ce n'est pas le but ... J'aimerais toucher le moins possible au fichier.
En tout cas merci, je vais laisser le post ouvert pour le moment, voir si quelqu'un n'a pas d'autre idées.
Bonne journée
vanessam a écrit :le but n'est pas de changer le résultat, mais bien la formule
Euh … ! si tu changes la formule, tu changes le résultat. Non ?
je veux qu'avant la partie Base, il me rajoute Ext.
Cela doit aussi pouvoir se faire en modifiant la formule.
Ce qui me gêne, c’est ce que tu as dit vouloir faire juste avant :
Remplacer ("Amort par ("Ext Amort, Remplacer tout
Car là, il n’y a pas de ‘’Amort’’ dans la formule mais seulement dans le résultat qu’elle donne.
OK ?
Bye !
Euh … ! si tu changes la formule, tu changes le résultat. Non ?
Certes on est d'accord, mais là c'est vraiment la formule que je veux changer ...
Car là, il n’y a pas de ‘’Amort’’ dans la formule mais seulement dans le résultat qu’elle donne.
Non là je ne suis pas d'accord ! Attention, dans ma colonne M il y a deux types de formules, d'où mes deux rechercher / remplacer ...
La formule que l'on trouve des lignes 12 à 26 est " =CONCATENER("Amort. Au ";Base!$J$2) ", d'où mon remplacement de "Amort par "Ext Amort, ce qui donne la formule " =CONCATENER("Ext Amort. Au ";Base!$J$2) ".
L'autre formule se trouve dans les lignes 2 à 11 et 27 à 28 : "=CONCATENER(Base!G5;" ";Base!$J$2) ", et c'est là où je veux remplacer (Base par (("Ext ";Base soit " =CONCATENER("Ext ";Base!G5;" ";Base!$J$2) ". Le mot Amort qui ressort de cette formule se trouve dans l'onglet Base, c'est pour ça qu'il n'apparaît pas dans la formule.
Le but de ces deux formules est de rajouter Ext dans le résultat, ce qui au final est le même principe pour les deux, or une seule des deux fonctionne dans ta macro, et là je ne comprend pas pourquoi ...
Merci
Nouvel essai
Si j’ai bien compris car en remplaçant ‘’Base’’ par ‘’Ext Base’’ dans les formules on se réfère à une autre feuille qui n’existe pas et que j’ai créée pour l’exemple.
OK ?
Bye !
Bonjour vanessam,
bonjour gmb,
Ma contribution (pour autant que j'aie bien compris les explications
A+
Gmb,
Désolé, mais cela n'a rien à voir. Il n'y a aucun onglet à créer. Dans ma formule, il y a un point virgule entre "Ext " et Base, ce sont simplement deux arguments différents.
Ma formule est pour M3 : =CONCATENER(Base!G5;" ";Base!$J$2)
Ce qui donne de base comme résultat :
Base!G5 = Amort. agenc. cours et terrain au
Base!$J$2 = 31/07/2015
Soit M3 = Amort. agenc. cours et terrain au 31/07/2015
Et moi je voudrais simplement rajouter un argument dans ma formule CONCATENER à savoir "Ext " afin d'avoir en M3 :
Ext Amort. agenc. cours et terrain au 31/07/2015.
Voilà, c'est peut-être plus clair comme ça.
Frangy,
Je n'ai qu'une chose à dire : PARFAIT !!!! Merci, c'est exactement ce que je voulais !!!!!
Merci à vous deux d'avoir planché sur mon sujet ! Vive les forums et toute la communauté qui le maintien en vie !!!
Bonne soirée à tous