Création d'une formule excel

Résolu
Bonjour,

Je souhaiterais modifier ma formule en R6 de sorte que si la cellule F6 est égale à 0 alors la cellule R6 est aussi égale à 0. Sinon, lorsque F6 est égale à 1, je voudrais que ça applique ce qui est inscrit dans la formule R6 (voir tableau excel).

J'ai essayé de modifier moi-même la formule :

=SI(G6="";"";SI(F6=0;0;(MOD(LIGNE();2)=0;DECALER(G6;1;0);DECALER(G6;-1;0))))

... mais sans aucun résultat.

https://www.cjoint.com/c/HBln44mYHSX

Merci d'avance,

Cordialement,

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour
    Est ce quette formule fait le job?
    A mettre dans r6
    =SI(F6=0;0;SI(G6="";"";SI(MOD(LIGNE();2)=0;DECALER(G6;1;0);DECALER(G6;-1;0))))

    bien cordialement
    1. Non ça ne fonctionne pas, mais je me suis peut être mal expliquée. Quand dans la colonne G, une cellule est égale à 0 (par exemple : G6), je voudrais qu'en R6, ça soit aussi égal à 0. Mais, lorsque dans la colonne G6, une cellule est égale à un autre résultat que 0 (par exemple : 3), ce résultat soit affiché en R7.
    2. Contributeur
      Bonjour
      votre formule dit (et fonctionne) que si la valeur de G6 est sur une ligne paire, c'est la valeur de G7 qui est renvoyée et que si elle est sur une ligne impaire, c'est la valeur de G5
      est ce que vous voulez? car ce n'est pas ce que vous dites dans votre dernier message
      selon cette dernière question, la formule est en R7, mas en >R6:
      =SI(OU(G6<>"";G6<>0);G6;"")
      alors revenez avec plus d'explications
      à vous lire
      crdlmnt
    3. Dsl, j'ai conscience de ne pas être trop claire dans mes explications. J'ai essayé de faire un tableau pour me permettre d'être plus compréhensive.

      https://www.cjoint.com/c/HBlpI3vMHvX
    4. Contributeur
      Je crois avoir compris et si c'est le cas, vous ne pouvez pas obtenir le résultat par formule (mais seulement j'ai bien compris

      si je vous suis:
      admettons que vous ayez une valeur X en E3 et une valeur Y en B4 lorsque A3 est 0
      si on place 1 ern A3, il faudrait que E3 devienne Y et B4 devienne X
      (donc en fait intervertir E3 et B4 et ça en continu dans un tableau de X lignes.)

      là il faudra passez par VBA et ça ça n 'est pas dans mon domaine, ou alors via des artifices un peu tordus..

      mais il devrait y avoir sur ce site des gens capables de vous traiter ça plus élégamment que je eux vous le proposer!
    5. Merci d'avoir cherché des solutions pour mon problème. Je pense que ce que je souhaite faire et bien trop difficile, je vais sans doute en rester là.

      cordialement,
  2. Suite ,
    Place ce code dans dans l'évenement worskheets de la feuille et dis moi si ça répond à ton besoin.
    Je reste à l'écoute

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    DL = ActiveSheet.Range("G" & Rows.Count).End(xlUp).Row

    Dim CELL As Range

    For Each CELL In ActiveSheet.Range("G5:G" & DL)
    If CELL.Value = 0 Then CELL.Offset(0, 11).Value = 0
    If CELL.Value <> 0 Then CELL.Offset(1, 11).Value = CELL.Value
    Next
    End Sub
    1. J'essaye ça et je reviens vers vous. Merci
    2. Bonsoir,

      La formule ne fonctionne pas, mais ce n'est pas grave, je vais en rester là.
      Merci de votre aide.

      Cordialement,