こんにちは、いつもお世話になっています。早速ですが、いま、VBの練習で、Microsoft Access のデーターベースを使ったプログラムを作っています。
ひとつのフォームにADODC と DataGrid を使って、アクセスのデーターを表示させ、下のFrameの中にVB作成のテキストボックスを作り、そこのテキストボックスに何かインフォメーションをいれ、”Add"コマンド(cmdAdd)をクリックするとそれらインフォメーションが新しいレコードとしてアクセスのデーターベースに記録されるようにしたいと思っています。 いまのところ、それらインフォメーションがアクセスのデーターベースに表示されるところまでは、できたのですが、上書き表示になってしまい、新しいレコードとしては、表示されません。もし、どなたか、解決方法を知っている方がいらっしゃいましたら、おしえてください。
一応、下に対象フォームのソースコードの一部を記入しておきます。まったく違っていたらどうか気になさらずにずばっと言ってくれたら幸いです。
Private Sub cmdAdd_Click()
Dim intID As Integer, strFName As String, strLName As String, vntAddress As Variant,
intID = Val(txtCustomerID.Text)
strFName = txtFname.Text
strLName = txtLname.Text
vntAddress = txtAddress.Text
adoCustomer.Recordset.Fields.Item(0).Value = intID
adoCustomer.Recordset.Fields.Item(1).Value = strFName
adoCustomer.Recordset.Fields.Item(2).Value = strLName
adoCustomer.Recordset.Fields.Item(3).Value = vntAddress
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは。
ADODCを使用したことが無いので、違うかも知れませんが・・・
基本的に、レコードセットにデータを新規に入力する場合は、
「AddNew」→「Update」を使います。
また、なぜ上書きになっているかと言うと、
サンプルのソースですと、現在のレコードセットの「カレントレコード」に
値を代入していますので、その「カレントレコード」の値が変更されることになります。
文面から判断いたしますと、あまりレコードセット関連のことについてはお詳しく無さそうですので、(違っていたら本当にすいません。)
「カレントレコード」・「EOF・BOFプロパティ」といった単語でヘルプを検索して調べてみるのも良いかと思います。
何かありましたら、補足しておいてください。
まったくそうです。文の中で、書くのを忘れたのですが、実は、今、VBを勉強中でこれは、その勉強の'final project' として学校から出された課題の中の問題です。とりあえず、言われたとおりのことをしてみます。それにしても、本当に丁寧に教えてもらいありがとうございました。また何かありましたら、このサイトに立ち寄らせていただきます。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Visual Basic(VBA) VBAにてメール作成した際、一部指定箇所のみ赤文字にしたいです。 下記の内容ですと作成されたメール本 1 2022/04/27 13:31
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Visual Basic(VBA) 以下のVBAで該当文字列の前後に付与したい。 例 前に付与 abc ユーザーID 12345 後に付 3 2022/04/19 21:50
- Visual Basic(VBA) シフト表のコマで「ブロック」されている前の時間の「出」を同一列の「休」と入れ替えたいがふぇきません。 2 2023/08/02 18:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ADO VBA 実行時エラー3021
-
DataGridViewの、選択されてい...
-
レコードが存在しなかった場合
-
JSPのNULLレコード表示について...
-
アクセスでレポートの1印刷内...
-
DataGridViewの内容をDBに反映...
-
ヘッダレコードとトレーラレコ...
-
Line Inputで文字化け(助けて...
-
ACCESSのフォームで複数レコー...
-
【ExcelVBA】Powerクエリーでい...
-
Javaで使用するデータベースの...
-
ACCESSで大量の更新を行うと「...
-
レコードセット(ADO.Recordset)...
-
ACCESS VBA テーブルデータに...
-
サブレンジ分割されたNDB(富士...
-
Accessデータシートビューの行...
-
ワードの差込印刷で教えて下さ...
-
ACCESSで「16389予約済みエラー...
-
AccessVBAのMoveメソッドにつき...
-
Access でレコードセレクタが押...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
レコードが存在しなかった場合
-
ADO VBA 実行時エラー3021
-
ファイル書込みで一行もしくは...
-
アクセスでレポートの1印刷内...
-
カレントレコードが無い事を判...
-
差し込み印刷のレコード数について
-
レコードセット(ADO.Recordset)...
-
ワードの差込印刷で教えて下さ...
-
DataGridViewの内容をDBに反映...
-
Access でレコードセレクタが押...
-
DataGridViewの、選択されてい...
-
JSPのNULLレコード表示について...
-
ACCESSで大量の更新を行うと「...
-
[VBA] ADOの Clone と AddNew
-
Access を×ボタンで閉じ...
-
サブレンジ分割されたNDB(富士...
-
ヘッダレコードとトレーラレコ...
-
データセットのレコード更新が...
-
DataGridViewにてセル以外をク...
-
Line Inputで文字化け(助けて...
おすすめ情報