Petit prôblème de formules sous Excel

lePtitMatou -  
 lePtitMatou -
Bonjour,

Voici mon petit prôblême en partant du tableau non exhaustif ci-dessous :

A B
1 0
1 0
1 0
0 0
0 1
0 0
0 0
1 0
1 0
1 0

Quand une cellule de la colonne B est égale à 1 (Ici B10=1), Chercher la valeur égale à 1 la + proche dans la colonne A sur une plage de données (A6:A14) (Ici ce serait A8 et A13) et afficher la valeur 1 dans la colonne C (dans les cases C8 et C13).

J'ai cherché avec les formules Recherche, recherche H et V mais sans résultats...

Merci de votre aide.

2 réponses

  1. danielc0 Messages postés 2211 Date d'inscription   Statut Membre Dernière intervention   294
     
    Bonjour,

    En attendant mieux, en supposant qu'il n'y ait qu'une valeur 1 en colonne B et avec deux colonnes de calcul :
    en C6 à recopier vers le bas :
    =SI(OU(LIGNE()=MAX($D$6:$D$15);LIGNE()=MIN($E$6:$E$15));1;"")
    en D6 à recopier vers le bas :
    =SI(ET(B6=0;A6=1;ESTNUM(EQUIV(1;B6:$B$15;0)));LIGNE();"")
    en E6, à recopier vers le bas :
    =SI(ET(A6=1;B6=0;ESTNUM(EQUIV(1;$B5:B$6;0)));LIGNE();"")

    Cordialement.
    Daniel
    0
    1. lePtitMatou
       
      Merci Champion :)
      0
  2. Hutg Messages postés 8 Statut Membre
     
    Bonjour,

    Sinon en VBA :

    Sub un()
    Set zone = Range(Cells(1, 2), Cells(10, 2))

    For Each C In zone
    If C = 1 Then
    i = 0
    Do While Not Cells(C.Row + i, 3) = 1
    If Cells(C.Row + i, 1) = 1 Then
    Cells(C.Row + i, 3) = 1
    Else
    i = i + 1
    End If
    Loop
    i = 0
    Do While Not Cells(C.Row - i, 3) = 1
    If Cells(C.Row - i, 1) = 1 Then
    Cells(C.Row - i, 3) = 1
    Else
    i = i + 1
    End If
    Loop
    End If
    Next C
    End Sub

    Bon courage
    0