|
皆様、はじめまして。クロと申します。
3日ほど前に、仕事で突然アクセス97を使うことになった初心者です。
皆様のお知恵を拝借できればと思い、投稿させてもらいます。
1.使っているデータベースの概略
・mdbファイルをオープンすると、最初のレコードが表示される。
・レコードは、数個のテキストボックスからできている。
・数個のテキストボックスは、プルダウンメニューで文字列が入力できる
ようになっている。
・レコード1から1000には、すでに文字列が入力されている。
・ここで新規レコードを追加のボタンをクリックすると、新しい1001番目の
レコードに移る。1001番目のレコードのテキストボックスは、すべて何も
入力されていない。
通常は、プルダウンメニューを使用して、テキストボックスを入力して
ゆく。
2.やりたいこと
・新規レコードを追加のボタンを押したときに、新規の1001番目のレコー
ドに、今まで表示させていたレコードのテキストボックスの文字列を複写
したい。
例えば、今表示させているのが、レコードの100で、新規レコードを追加
したら、レコード100のテキストボックスの文字列が、あたらしい1001番
目のレコードにコピーされて表示してほしい。また、今までレコードが
2000まで入力されていてレコード2000が表示されている場合は、新規レコ
ードボタンを押すと、レコード2000のテキストボックスの文字列が、レコ
ード2001に複写されて、表示されてほしい。
3.とりあえずやったこと。
アクセスもプログラムも素人ですが、市販本を見て、今までのVBAのモジュー
ルに追加をしました。
やったことは、複数のイベントプロシージャで使えるkakariという変数を定
義して、これに係というテキストボックスの内容をいれて、新規レコードの
ボタンが押されたときに、新規レコードの係のテキストボックスに複写する
、としたつもりです。
新規レコードのボタンが押される前と後でUpdateを使用して、テキストボッ
クスの内容を複写したつもりです.......(^^;)
Option Compare Database
Option Explicit
Dim kakari As String ←追加
途中略
Private Sub 係_BeforeUpdate(Cancel As Integer) ←追加
kakari = Me!係 ←追加
End Sub ←追加
Private Sub 係_AfterUpdate() ←追加
Me![係].DefaultValue = kakari ←追加
End Sub ←追加
★これを、追加しても全く新しいレコードには、テキストボックスの内容
が複写されません。
きっと、とても基本的なことでつまずいていると思います。
おわかりの方、どうぞご教授ください。
★また、この程度のことならVBAをつかわずにコンボボックスの設定ででき
るよ!というご提案でもうれしいです。
長文、失礼しました。それでは失礼します。 クロ
|
|