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 :

Affichage de la formule au lieu du résultat :(


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 77
    Par défaut Affichage de la formule au lieu du résultat :(
    Bonjour à tous,

    Je souhaite finaliser une macro Excel, mais une formule me pose problème.

    Situation :
    J'ai une liste de noms dans la colonne B sous plusieurs formats (NOM,PRENOM - Prenom NOM - PRENOM NOM).
    Je souhaite les copiers en colonne C sous un seul format (NOM,PRENOM).


    Problème :
    J'ai écrit une formule permettant ce chagement de format. Elle fonctionne très bien sous Excel. Dès que je la retranscrit dans la page de code, soit manuellement, soit par enregistrement automatique, et que je lance la macro, la formule en VBA s'affiche dans les cellules de la colonne C, mais pas le résultat Or je souhaiterai que ce soit l'inverse, bien entendu ...
    A noter que je rencontre le même problème pour une formule toute simple ( ActiveCell.FormulaR1C1 = "=RC[-1]" ) que j'ai testée pour essayer de résoudre ce problème.
    Est-ce que l'un d'entre vous pourrais m'en donner la raison, et surtout le remède ?
    A toutes fins utiles, voici la partie du code concerné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
        Dim i As Integer
        i = 2
    ' Début de la boucle qui va copier la formule de mise en forme
    ' tant qu'il y a une valeur dans la colonne B
    ' Mise en forme (NOM,PRENOM) des noms de la colonne B en colonne C avec :
    '   - copie des noms dont le format est correct
    '   - mise en forme des noms dont le format est incorrect
    Do
        ' Si la cellule Bi ("i" = variable) n'est pas vide,
        ' alors la formule est copiée dans la cellule Ci
            If Rows(i).Hidden = False And Range("B" & i).Value <> "" Then
                Range("C" & i).Select
                ActiveCell.FormulaR1C1 = _
                "=UPPER(IF(ISERROR(CONCATENATE(RIGHT(RC[-1],LEN(RC[-1])-SEARCH("" "",RC[-1])),"",""," _
                & "(LEFT(RC[-1],SEARCH("" "",RC[-1]))))),RC[-1],CONCATENATE(RIGHT(RC[-1],LEN(RC[-1])" _
                & "-SEARCH("" "",RC[-1])),"","",(LEFT(RC[-1],SEARCH("" "",RC[-1]))))))"
    ' Modification de la valeur de i pour passer à la ligne suivante
                i = i + 1
            End If
        ' Boucle tant que la cellule Bi n'est pas vide
    Loop Until Range("B" & i).Value = ""
        ' FIN DE LA BOUCLE
    Merci d'avance
    Bruno Pérès

    Windows XP pro Version 5.1.2600 Service Pack 2
    Excel 2003 Version 11.8307.8202 SP3

  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
    un F9 par hasard?

  3. #3
    Membre chevronné
    Inscrit en
    Décembre 2003
    Messages
    434
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 434
    Par défaut
    Salut,

    Ou la cellule au format Texte.
    Verifie et si c'est le cas passe la en standard.
    Click droite/Format de cellule
    onglet Nombre et selection Standard

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    vois du côté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      ActiveWindow.DisplayFormulas = False 'True
    cordialement,

    Didier

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 77
    Par défaut
    Bonsoir,

    Merci à vous tous pour votre aide

    Citation Envoyé par Minick Voir le message
    Ou la cellule au format Texte.
    Verifie et si c'est le cas passe la en standard.
    Click droite/Format de cellule
    onglet Nombre et selection Standard
    Minick, c'est toi qui a raison C'est tellement bête que je n'avais même pas pensé à cette cause


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

Discussions similaires

  1. [XL-2013] Basculer entre l'affichage d'une formule ou de son résultat
    Par bendesarts dans le forum Excel
    Réponses: 13
    Dernier message: 18/09/2014, 09h52
  2. Réponses: 3
    Dernier message: 27/04/2010, 19h00
  3. [2007] Affichage d'une formule et de son résultat
    Par yassina1 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/03/2009, 10h37
  4. Réponses: 3
    Dernier message: 05/08/2008, 23h28
  5. Réponses: 4
    Dernier message: 07/06/2007, 12h46

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