質問: Nothing End Sub 一度目のdebug.printは5に、 二度目のdebug.printは4になります。 このような仕組みなのでしょうか。 ご教授お願いいたします。
回答: 結局、「AccessでadOpenDynamicは使うべきではない」ということなんだと思います。 もともとAccessの場合、Jet/Aceが動的カーソルをサポートしていないので、カーソルタイプは LockType=adReadOnlyのときはadOpenKeysetに、それ以外のときはadOpenStaticに変更される とよくいわれますが、その割にRowCountはとれないことを考えると、結局adOpenKeysetや adOpenStaticとして処理が行われているわけでもなく、意味不明のカーソルになっている と考える方が自然です。 確かにMovePreviousがおかしな動きをしますが、それは仕様だからというよりは、 「動的カーソルをサポートしていない場合の動きを保証していないから」と考えるべきでしょう。