|
>クロさん、本当に有難うございました。さっそく試しました。
>データーの競合・・は表示されますがテーブルを開くと
>レコードは更新してました。エラー表示は無視してもかまいません
>でしょうか。もしそうならエラー表示を回避する方法はありますか?
当方でのテストはテーブルで行ったのでクエリだと出る可能性は
ありますね。特にリレーションなど組んでいると
クエリの状況が分からないので何とも言えませんが...
>それと、更新後にレコードがとんでもない日付の位置まで(たぶん
>最初ごろのレコード)飛んで表示したりします。更新した位置で
>フォームに表示してあるレコードを保持する方法はありますか?
Private Sub コマンド102_Click()
Dim mySQL As String 'SQLステートメント
Dim cn As New ADODB.Connection
Dim com As New ADODB.Command
Dim varBM As Variant '現在のレコード位置取得のための変数
'現在位置取得
varBM = Me.Bookmark
'更新クエリを作成
mySQL = "update 受注伝票 set 集計月 = #" & 伝票日付 & "# " _
& "WHERE ((顧客コード = " & 顧客コード & ") and (伝票日付 Between #" & Me!date2 & "# And #" & Me!伝票日付 & "#));"
'接続
Set cn = CurrentProject.Connection
'更新クエリを実行
Set com.ActiveConnection = cn
com.CommandText = mySQL
com.Execute
'フォームの再クエリ
Me.Requery
'取得した位置を元に戻す
Me.Bookmark = varBM
If Me.NewRecord Then
DoCmd.GoToRecord , , acNext
End If
End Sub
|
|