毎回大変お世話になっています。今回はフォームのレコード数に関してです。
フォームの入力済みレコード数をテキストボックス(tx件数)のコントロールソースに=Count()として表示させています。この表示は問題ありません。そのtx件数を使って下記のコードでコマンド処理の条件にしています。
If Me.[tx件数]=0 Then
Me.[cmd_masterIN].Enabled = True
Else
Me.[cmd_masterIN].Enabled =False
End If
この処理が件数が0になっていないのに.Enabled = Trueになってしまうのです。
条件式を If Me.Recordset.RecordCount=0 に変更すると正しく処理されます。
Count()とRecordset.RecordCountは同じ結果の認識なのですが、違うのでしょうか?
私の知識不足と思っているのですが違いを教えて下さい。宜しくお願いします。
シチュエーションの詳細が不明ですね
この場合の
Me.[tx件数]とCount(*)は完全に同一のものというわけではないので、特定の場合において、Count(*)のつもりでMe.[tx件数]を使用した場合に不具合が起こることはあり得ますCount(*)とRecordset.RecordCountはまず同一とみてかまわないですがhirotonさん ありがとうございます。
その後色々コード等変更等している内にCount(*)でも正常になりました。他の処理との兼ね合いだったかもしれません。様子見て見ます。お騒がせしました。