Remplacer une partie de formule dans une cellule sous Excel

General1981 Messages postés 2 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour à tous,

je souhaite remplacer les formules contenues dans les cellules excel par leur valeur. Mais seulement en laissant l'opération +.

Par exemple, si dans la cellule C3, j'ai inscris la formule =somme(A1:A12)+somme(B3:B14) et que somme(A1:A12)=123 et somme(B3:B14)=321, le resultat serait =123+321.

Si possible sous VBA car j'ai des milliers de formules que je ne souhaite pas transformer manuellement à l'aide de la touche F9.

Merci d'avance.

5 réponses

  1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    ça aurait peut être été plus simple avec directement cette formule:
    =SOMME(A1:A12)&"+"&SOMME(B3:B14)

    crdlmnt
    0
  2. General1981 Messages postés 2 Statut Membre
     
    Merci beaucoup pour la réponse donnée. Mais en fait, je ne souhaite pas avoir pour résultat par exemple 123+321 dans la cellule ce que je veux c'est d'obtenir 444 (444=123+321). mais le contenu devrait avoir =123+321) et si possible avec code VBA.

    Cordialement,
    0
  3. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    =SOMME(A1:A12;B3:B14) & "=" & (SOMME(A1:A12) & "+" & SOMME(B3:B14)) devrait suffire.
    Mais si tu veux le programmer en VBA, libre à toi !
    0
    1. General1981
       
      Bonjour Raymond merci pour votre réponse mais je ne souhaite pas avoir dans la cellule un résultat du genre 444=123+321 mais plutôt 444 seul somme(A1:A12)+somme(B1:B6) devra être transformée en 123+321
      0
  4. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour à tous

    Un petit essai très modeste
    http://www.cjoint.com/c/GDpi1p4Ljts

    Cdlmnt
    0
    1. General1981
       
      Bonjour ccm81,
      Super cool ça répond exactement à ma préoccupation.
      Seulement comme j'ai une multitude de cellule la macro prend beaucoup de temps.

      Mais le test sur une cellule marche super bien. pour boucler j'utilise for each... next

      Y a til un autre moyen plus optimal?

      Merci beaucoup.
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Tu peux mettre, si ce n'est pas déjà fait, en début de code, l'instruction
    Application.ScreenUpDating = false
    qui désactive le rafraichissement de l'écran à chaque recalcul

    Cdlmnt
    0