Page 521 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼別テーブルにレコードを追加 B-BOSS 04/2/28(土) 12:18 ┗Re:別テーブルにレコードを追加 イケガミ 04/2/28(土) 12:56 ┗Re:別テーブルにレコードを追加 B-BOSS 04/2/29(日) 10:34 ┗Re:別テーブルにレコードを追加 イケガミ 04/2/29(日) 14:35 ┗Re:別テーブルにレコードを追加 B-BOSS 04/2/29(日) 14:49 ┗Re:別テーブルにレコードを追加 よろずや 04/2/29(日) 22:52 ┗Re:別テーブルにレコードを追加 B-BOSS 04/3/1(月) 22:43 ─────────────────────────────────────── ■題名 : 別テーブルにレコードを追加 ■名前 : B-BOSS ■日付 : 04/2/28(土) 12:18 -------------------------------------------------------------------------
現在、開いてるデーターベースのAAAフォームにボタンを追加して そのボタンをクリックすると、BBBのテーブルにレコードを追加できる コードを書いたつもりですが、★の部分に「型が一致しません。」と言うメッセージが でます。 なぜでしょうか? 教えてください。 Dim myRs As Recordset Dim PA_ME As String PA_ME = Me.AAA商品.Text ★ Set myRs = CurrentDb.OpenRecordset("BBB") myRs.AddNew myRs("BBB商品名") = PA_ME myRs.Update myRs.Close |
>なぜでしょうか? 教えてください。 バージョンが、2000か2002なのでは? 「ツール」→「参照設定」で、 Microsoft DAO3.X Object Library にチェックを入れて、 > Dim myRs As Recordset Dim myRs As DAO.Recordset > PA_ME = Me.AAA商品.Text PA_ME = Me.AAA商品.Value のように修正してください。 |
ありがとうございました。 うまくいきました。Accessは2000を使用しています。 そこで更に質問です。 Recordsetの前に付けたDAO.って、どう言う意味ですか? ▼イケガミ さん: >>なぜでしょうか? 教えてください。 >バージョンが、2000か2002なのでは? > >「ツール」→「参照設定」で、 >Microsoft DAO3.X Object Library にチェックを入れて、 > >> Dim myRs As Recordset > Dim myRs As DAO.Recordset > >> PA_ME = Me.AAA商品.Text > PA_ME = Me.AAA商品.Value > >のように修正してください。 |
>Recordsetの前に付けたDAO.って、どう言う意味ですか? Recordset オブジェクトは、DAO にも、ADO にもありますので、 どっちを使うのか書いておかないと、参照設定で、上位にあるほうが 使われてしまいます。 なので、宣言時に、DAO. をつけておくといいです。 |
Access2000を使用しています。 実は受注と言うテープルが商品マスターと言うテーブルと連結しています。 商品マスターの"MS商品名"は受注テーブルの"商品名"と言うコンボボックスコントロールのリストとして利用します。 商品名コンボボックスにリスト以外のデーターを入力した際に、自動的にマスターテーブルに追加される様にしたかったのですが、うまくいきません。 下のコード何か問題ありますか?? Private Sub 商品名_NotInList(NewData As String, Response As Integer) Dim PA_ME As String Dim myRs As DAO.Recordset PA_ME = Me.商品名.Text MsgBox (PA_ME) Set myRs = CurrentDb.OpenRecordset("商品マスター") myRs.AddNew myRs("MS商品名") = PA_ME myRs.Update myRs.Close Me.商品名.Requery DoCmd.GoToRecord , , acPrevious End Sub |
>下のコード何か問題ありますか?? > >Private Sub 商品名_NotInList(NewData As String, Response As Integer) > Dim PA_ME As String > Dim myRs As DAO.Recordset > PA_ME = Me.商品名.Text > MsgBox (PA_ME) > > Set myRs = CurrentDb.OpenRecordset("商品マスター") > myRs.AddNew > myRs("MS商品名") = PA_ME > myRs.Update > myRs.Close > > Me.商品名.Requery > DoCmd.GoToRecord , , acPrevious >End Sub 新しい値は、NewData を使ってください。 Response に値を設定してください。 詳しくは、ヘルプを熟読してください。 |
よろずやさん、回答、ありがとうございます。 Responseの件は理解できました。 しかし、NewDataを使うのは、どのコードの事を言うのですか? Helpに"NewData"と入力して検索しても"キーワードがありません" と言われてしまいます。 教えてください。 >新しい値は、NewData を使ってください。 >Response に値を設定してください。 >>下のコード何か問題ありますか?? >> >>Private Sub 商品名_NotInList(NewData As String, Response As Integer) >> Dim PA_ME As String >> Dim myRs As DAO.Recordset >> PA_ME = Me.商品名.Text >> MsgBox (PA_ME) >> >> Set myRs = CurrentDb.OpenRecordset("商品マスター") >> myRs.AddNew >> myRs("MS商品名") = PA_ME >> myRs.Update >> myRs.Close >> >> Me.商品名.Requery >> DoCmd.GoToRecord , , acPrevious >>End Sub > >新しい値は、NewData を使ってください。 >Response に値を設定してください。 >詳しくは、ヘルプを熟読してください。 |