|
>並び替え後
>20041201,11013015,0806,1730 になります。
>ID:11013016の退勤時間は消滅してしまいます。
>これが理解できません。
>何故でしょうか?
サンプルデータからみて、出勤時間と退勤時間は必ず対になっていると思っていました。
結果、Range("D2").Delete Shift:=xlUp実行時点で、データは
20041201,11013015,0806,1730
20041201,11013015
になるはずです。そのため、下から5行目の
If ActiveCell.Offset(0, 2).Value = "" Then
で、出勤時間が空白の時その行を削除しています。
退勤時間のみだけでなく、出勤時間のみというのもありえるのであれば、
If ActiveCell.Offset(0, 2).Value = "" And ActiveCell.Offset(0, 3).Value = "" Then
にしないといけません。それ以前に、
20041201,11013015,0806,
20041201,11013015, ,1730
20041201,11013016, ,1730
となっていた場合、Range("D2").Delete Shift:=xlUpで
20041201,11013015,0806,1730
20041201,11013015, ,1730
20041201,11013016, ,
になってしまうため、コードを見直す必要があります。
>2、
>日付順に並べようと思い
>並び替えのところを Key1:=Range("A1") にしました。
>そうするとD列:退勤時間が同じ日付に対し1件しか表示しなくなります。
>何故でしょうか?
その状態が再現できるサンプルデータを教えていただけませんか?
|
|