- 締切済み
ACCESS2000の帳票フォームでテキストボックスの入力値を取得したい
こんにちは。ACCESS2000でツールを作成しています。 テーブルはExcelにリンクさせ、クエリを介して帳票フォームで データを表示しています。 帳票フォームのレコード毎にテキストボックスを追加して それぞれ入力できるようにし、その値をVBAで取得したいのですが どうすればよいでしょうか。 テキストボックスを追加して実行すると、一つのテキストボックスに 入力した値が全てのレコードに反映されているようです。 帳票フォームのしくみがよく分かりません。 どなたか教えていただけないでしょうか。 宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- BraveStory
- ベストアンサー率47% (11/23)
#2です。 >やはり元のデータに列を追加しないとだめでしょうか。 エクセルのシートに列を追加したくないというのなら、リンクではやはり無理ではないでしょうか。 インポートはなく、リンクである必要が何なのかによって、対応方法も変わってくると思いますが、次のような方法のいずれかを検討されてはいかがでしょか。 ・エクセルシートに列を追加し、非表示とする ・フォームを開くときににエクセルシートをインポートする、あるいはエクセルにリンクしたテーブルのコピーを作る ・もとのシートとリンクしている、必要な列が全て入った別のエクセルシートを用意し、それにテーブルをリンクさせる ・表形式のフォームをやめる。表形式にみえるフォームを単票フォームで作る。
- BraveStory
- ベストアンサー率47% (11/23)
テキストボックスのプロパティで、「コントロールソース」(データタブ内)に反映させたいフィールドが選択されていますか?
- oka123
- ベストアンサー率31% (69/219)
こんにちわ モジュール(フアンクション)のなかで DIM FM1 AS FORM DIM KM1 AS STRING - - - - SET FM1=SCREEN.ACTIVEFORM KM1=FM1![NAME1] と書きます NAME1 はテキスト項目名 KM1 に入力されている値が入ります
お礼
ご回答ありがとうございます。 すみません、やりたいことがうまく伝わっていないようです。 帳票フォームには複数のレコードが表示されていて (でもデザインでは1レコードのみ) テキストボックスを追加すると、各レコード(行)に テキストボックスが表示されるのですが 一つのテキストボックスに値を入力して 次のテキストボックスに移動すると 一つ目に入力した値が次のテキストボックスに入ってきてしまいます。 これをそれぞれ値を設定できるようにして、さらにその値を それぞれ取得できるようにしたいのです。 どうか宜しくお願いします。 ----------------------- テキストボックス 列1 列2 □ 1 1 ←レコード1 □ 2 2 ←レコード2 ----------------------- □はテキストボックスです。 レコード1とレコード2のテキストボックスに それぞれ違う値を入力し、それをVBAで取得したいのです。
お礼
ご回答ありがとうございます。 テーブルはExcelにリンクしているため、 テキストボックスを連結させると列の更新ができませんでした。 そこでテキストボックスを非連結にし、テキストボックスに入力された値を 新しいExcelファイルにエクスポートするようにしたいのですが。 やはり元のデータに列を追加しないとだめでしょうか。