Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2247 / 2272 ツリー ←次へ | 前へ→

【3205】レコードが重複して登録されてしまう。 ことら 04/8/12(木) 15:43 質問[未読]
【3206】Re:レコードが重複して登録されてしまう。 phoo 04/8/12(木) 18:19 回答[未読]
【3210】Re:レコードが重複して登録されてしまう。 こもれび 04/8/13(金) 12:53 回答[未読]
【3237】Re:レコードが重複して登録されてしまう。 ことら 04/8/16(月) 0:46 お礼[未読]
【3250】Re:レコードが重複して登録されてしまう。 ことら 04/8/17(火) 17:22 お礼[未読]

【3205】レコードが重複して登録されてしまう。
質問  ことら  - 04/8/12(木) 15:43 -

引用なし
パスワード
   こんにちは。行き詰まってしまいました。かなり初歩的な事ですが、
どなたかご教授頂ければ幸いです。

フォームに登録ボタンを設け以下のようなコードを書きましたが、
登録ボタンをクリックすると、エラー処理:に飛んでしまい「登録でき
ませんでした」のメッセージを返します。
しかし、実際テーブルを見るとちゃんとレコードが追加されております。
更にここでおかしいのは、1回しか登録ボタンをクリックしていない
にもかかわらず、まったく同じレコードが自動的に重複して追加されて
いるという点です。
どうもこの入力フォームを閉じる時にまったく同じレコードが追加され
てしまうようなのですが、原因がつかめません。
以上、この2点なのですが、宜しくお願い致します。

Private Sub 登録_Click()
On Error GoTo エラー処理

Dim cn As New ADODB.Connection
Dim Rst As New ADODB.Recordset

Set cn = CurrentProject.Connection

Rst.Open "t_main", cn, adOpenKeyset, adLockOptimistic, adCmdTableDirect


 With Rst
 
   .AddNew
  
    !ID = Me.ID
    !エリア = Me.エリア
    !サブエリア = Me.サブエリア
    !全体管理番号 = Me.全体管理番号
       
   .Update
  
 End With
 
  Rst.Close
  cn.Close
   
エラー処理:
 MsgBox ("登録できませんでした。")

 Exit Sub
  
End Sub

【3206】Re:レコードが重複して登録されてしまう。
回答  phoo  - 04/8/12(木) 18:19 -

引用なし
パスワード
   ▼ことら さん:
>フォームに登録ボタンを設け以下のようなコードを書きましたが、
>登録ボタンをクリックすると、エラー処理:に飛んでしまい「登録でき
>ませんでした」のメッセージを返します。
>しかし、実際テーブルを見るとちゃんとレコードが追加されております。

>エラー処理:
> MsgBox ("登録できませんでした。")
>
> Exit Sub

エラー処理の前にexit sub をつければ、
エラー処理には飛びません。
二重登録は?

【3210】Re:レコードが重複して登録されてしまう。
回答  こもれび  - 04/8/13(金) 12:53 -

引用なし
パスワード
   >二重登録は?

ことら様の作成されたフォームが「t_main」テーブルとの連結フォーム
になっているのが原因ではないでしょうか。

連結フォームになっていますと「登録」ボタンをクリックし、イベント
プロシージャを呼んだあとに移動ボタンをクリックするようなことを
行いますとテーブルのデータは2重になってしまいます。

解決方法としては「非連結」とすることだと考えます。

【3237】Re:レコードが重複して登録されてしまう。
お礼  ことら  - 04/8/16(月) 0:46 -

引用なし
パスワード
   ご回答ありがとうございます。
早速試してみます。
結果をまた報告させて頂きたいと思います。

【3250】Re:レコードが重複して登録されてしまう。
お礼  ことら  - 04/8/17(火) 17:22 -

引用なし
パスワード
   皆様のお蔭様で解決致しました。
ありがとうございました。

2247 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078325
(SS)C-BOARD v3.8 is Free