投稿/コメントを表示します。

migi = migi + 1
の位置をEnd If の後に持ってきたらどうなるか想像してやってみたところ思ったとおりになりました。

もう一つ

For hida = 2 To 500 
と317よりも長めにおいてみたところD22のセルに21が入ってしまいました。
なぜD22にだけ入ってしまうのかが理解ません。
自分でマクロを動かしたときにも一番下の行だけほかの行と
違っていたりするのと関係がある気がするのですが・・


Sub rensyu()
Dim migi As Long
Dim hida As Long
migi = 2
For hida = 2 To 500
If Range("B" & hida).Value <> Range("B" & hida - 1).Value Then
Range("D" & migi).Value = migi - 1
Range("e" & migi).Value = Range("B" & hida).Value
migi = migi + 1
End If
Next
End Sub


2014/01/06 03:54