Repérer les limites d'une série de cellules non vides

Korben Dallas

XLDnaute Nouveau
Bonjour à tous,

Je bute sur un problème (ce qui n'est pas surprenant vu mes connaissances excel) que j'espère vous pourrez m'aider à résoudre sans trop vous prendre de temps...

J'ai un tableau de planning que je remplis par 1/4 d'heures de manière à bien visualiser le nombre de personnes présentes en même temps (voir le PNG) Les cases vertes contiennent un "1" et les blanches rien.

J'aimerais, que sur une autre feuille, les heures d'un salarié soit récapitulées comme suit Jeff : 8h30 - 13h - 14h - 17h30
Il faudrait donc détecter à quelle cellule ça passe de rien à 1 ou de 1 à rien, ce que j'ai partiellement fait avec un =SI(D2=C2;"";D1) étiré, mais il y a des cellules vides entre chaque horaire...

Bref, comment faire mieux que ça, ou à défault comment réécrire ma ligne de "=SI(D2=C2;"";D1)" en supprimant les cases vides ?

J'espère avoir été à peu près clair, d'avance Merci !
 

Pièces jointes

  • planning.png
    planning.png
    8 KB · Affichages: 16

job75

XLDnaute Barbatruc
Bon voyez le fichier joint et cette fonction VBA, à placer impérativement dans un module standard :
VB:
Function Bornes(heures As Range, plage As Range) As String
Dim i%, flag As Boolean
For i = 1 To plage.Count
    If Not flag And plage(i) = 1 Then Bornes = Trim(Bornes & " " & heures(i).Text) & "-": flag = True
    If flag And plage(i) = "" Then Bornes = Bornes & heures(i - 1).Text: flag = False
Next
If Right(Bornes, 1) = "-" Then Bornes = Bornes & heures(plage.Count).Text
End Function
Elle est utilisée dans la feuille de calcul avec cette formule en AM2 =Bornes(B$1:AK$1;B2:AK2)
 

Pièces jointes

  • Bornes(1).xlsm
    21.8 KB · Affichages: 5

Discussions similaires

Statistiques des forums

Discussions
312 189
Messages
2 086 033
Membres
103 102
dernier inscrit
nath34490