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 :

Traduire une formule en code VBA [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 117
    Points : 62
    Points
    62
    Par défaut Traduire une formule en code VBA
    Bonjour,

    Comment je peux traduire la formule suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    si(N7:N1000="Autres";"OK";"")
    en code VBA ?

    Merci.

  2. #2
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, à tester et adapter.
    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
    Option Explicit
     
    private Sub Essai(r As Range)
    Dim c As Range
        For Each c In r
            If c.Value = "Autres" Then
                Debug.Print "Ok"
            Else
                Debug.Print "xx"
            End If
        Next c
    End Sub
     
    Sub Tst()
        Essai Range("N7: N1000")
    End Sub
    ou alors via FormulaLocal ?

    PS : oops, pas vu à temps la réponse d'Hervé

  3. #3
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    Tu ne peux appliquer cette formule que sur une seule cellule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("A1").Formula = "=IF(N7=""Autres"",""OK"","""")"
    et non :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("A1").Formula = "=IF(N7:N1000=""Autres"",""OK"","""")"
    ou alors, il te faut modifier ta formule en utilisant d'autre fonctions.

    Hervé.

  4. #4
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    J’ai interprété ta demande différemment.
    Si j’ai bien saisi, tu souhaites vérifier si toutes les cellules de la plage N7 :N1000 contiennent le texte "Autres".
    Dans ce cas, la formule s’apparenterait à cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(NB.SI(N7:N1000;"Autres")=LIGNES(N7:N1000);"OK";"")
    Et un code VBA correspondant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Option Explicit
    Sub Essai()
    Dim c As Range
    Dim Test As String
        Test = "OK"
        For Each c In Range("N7:N1000")
            If c.Value <> "Autres" Then
                Test = ""
                Exit For
            End If
        Next c
        Debug.Print Test
    End Sub
    Cordialement.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 117
    Points : 62
    Points
    62
    Par défaut
    Bonjour et merci pour votre aide.

    Le problème est résolu.

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

Discussions similaires

  1. Ajout d'une formule par code vba
    Par Runsh63 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/05/2011, 09h50
  2. Parseur formule Excel <-> Code VBA
    Par gretch dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/08/2007, 18h08
  3. Réponses: 1
    Dernier message: 23/08/2006, 21h26
  4. Imprimer la structure d'une base sans code vba
    Par steph141 dans le forum Access
    Réponses: 2
    Dernier message: 06/04/2006, 22h30
  5. Prob pour exporter une macro en code VBA
    Par electrosat03 dans le forum Access
    Réponses: 6
    Dernier message: 04/02/2006, 19h15

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