そもそも データに誤りがあったら正確な処理は期しがたいが、
E列に異常メッセージを出すようにしたら少しは救われるかも知れない。
D2セル =IF(A2="","",IF(OR(A1<>A2,A2<>A3),B2,IF(B1<>B2,IF(B2="退勤","休憩開始","休憩終了"),"")))
E2セル =IF(A2="","",IF(AND(A1<>A2,B2<>"出勤"),"出勤じゃない",IF(AND(A2<>A3,B2<>"退勤"),"退勤じゃない",IF(B1=B2,B2&"が連続",""))))
各数式を下にコピー
F2セル =SUM(SUMIF(D:D,{"出勤","退勤"},C:C)*{-1,1})-G2
G2セル =SUM(SUMIF(D:D,{"休憩終了","休憩開始"},C:C)*{1,-1})
<結果図>
行 __A__ __B__ __C__ ____D____ _______E_______ ____F____ ____G____
1 目視チェック必要 労働時間 休憩時間
2 4/15 出勤 9:00 出勤 ######## 14:00
3 4/15 退勤 10:00 休憩開始
4 4/15 出勤 11:00 休憩終了
5 4/15 退勤 12:00 休憩開始
6 4/15 出勤 13:00 休憩終了
7 4/15 出勤 13:05 出勤が連続
8 4/15 退勤 14:00 退勤
9 4/16 退勤 9:00 退勤 出勤じゃない
10 4/16 退勤 10:00 退勤が連続
11 4/16 出勤 11:00 休憩終了
12 4/16 退勤 12:00 休憩開始
13 4/16 出勤 13:00 休憩終了
14 4/16 出勤 13:05 出勤が連続
15 4/16 出勤 14:00 出勤が連続
16 4/16 出勤 14:00 出勤 退勤じゃない