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 :

explication de formule


Sujet :

Macros et VBA Excel

  1. #1
    Membre très actif Avatar de pilounet54
    Homme Profil pro
    retraité
    Inscrit en
    Février 2008
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Service public

    Informations forums :
    Inscription : Février 2008
    Messages : 489
    Par défaut explication de formule
    bonjour es que quelqu'un pourrai me donné l'explication de la formule de départ que je comprend
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(H6="ok";$H$3+0;SI(I6="ok";$I$3+0;SI(J6="ok";$J$3+0;SI(K6="ok";$K$3+0;SI(L6="ok";$L$3+0;SI(M6="ok";$M$3+0;""))))))----
    et la formule la ,qui es la même mais que je ne comprend pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .FormulaR1C1 = "=IF(RC[1]=""OK"",R3C8,IF(RC[2]=""OK"",R3C9,IF(RC[3]=""OK"",R3C10,IF(RC[4]=""OK"",R3C11,IF(RC[5]=""OK"",R3C12,IF(RC[6]=""OK"",R3C13,""""))))))"
    merci beaucoup

  2. #2
    Expert confirmé
    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
    Par défaut
    Bonjour,

    La formule ci-dessous est en référence absolue de type R1C1 (Row1Column1) c'est à dire depuis A1 3 lignes vers le bas (obligatoirement, valeurs négatives interdites) et 8 colonnes vers la droite (obligatoirement aussi) donc, référence à H3 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("C4").FormulaR1C1 = "=R3C8" 'inscrit =$H$3
    Celle qui suit, est en référence relative donc, relative à la cellule recevant la formule soit 3 lignes vers le bas (ici valeur positive, 3) et 8 colonnes vers la droite (ici aussi en valeur positive, 8) ici, référence à K7 depuis C4. Les valeurs peuvent être négatives à condition bien sûr de ne pas aller au delà de A1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("C4").FormulaR1C1 = "=R[3]C[8]" 'inscrit =K7 sans les dollars de référence absolue
    La formule ci-dessous, en référence R1C1 (FormulaR1C1), est équivalente à la formule référence A1 (dans l'exemple, en Français > FormulaLocal) qui la suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Range("A1").FormulaR1C1 = "=IF(RC[1]=""OK"",R3C8,IF(RC[2]=""OK"",R3C9,IF(RC[3]=""OK"",R3C10,IF(RC[4]=""OK"",R3C11,IF(RC[5]=""OK"",R3C12,IF(RC[6]=""OK"",R3C13,""""))))))"
     
    Range("A1").FormulaLocal = "=SI(B1=""OK"";$H$3;SI(C1=""OK"";$I$3;SI(D1=""OK"";$J$3;SI(E1=""OK"";$K$3;SI(F1=""OK"";$L$3;SI(G1=""OK"";$M$3;""""))))))"
    Le fait d'omettre le nombre devant la lettre signifie qu'il n'y a pas de décalage de ligne ou de colonne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("C4").FormulaR1C1 = "=R[3]C"
    Ceci fait référence à la cellule située 3 lignes plus bas mais dans la même colonne, ici, C7 elle est équivalente à celle-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("C4").FormulaR1C1 = "=R[3]C[0]"
    Et en Anglais, le compilateur faisant la conversion (attention à ne pas utiliser le point-virgule mais la virgule) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("A1").Formula = "=IF(B1=""OK"",$H$3,IF(C1=""OK"",$I$3,IF(D1=""OK"",$J$3,IF(E1=""OK"",$K$3,IF(F1=""OK"",$L$3,IF(G1=""OK"",$M$3,""""))))))"
    Hervé.

Discussions similaires

  1. [XL-2007] Mise en forme formule DECALER + explications
    Par Omnbre dans le forum Excel
    Réponses: 0
    Dernier message: 26/06/2015, 13h37
  2. Explications d'une formule
    Par Nounours1 dans le forum Excel
    Réponses: 6
    Dernier message: 01/11/2007, 15h12
  3. Explication procédure stockée
    Par underworld dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/09/2002, 10h51
  4. Recherche code d'un fifo,ou explication
    Par don-diego dans le forum C
    Réponses: 8
    Dernier message: 25/07/2002, 10h26
  5. recherches des cours ou des explications sur les algorithmes
    Par Marcus2211 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 19/05/2002, 22h18

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