• 締切済み

VBAの、表形式で作ったサブフォームのコントロール方法

表形式でサブフォームを作った後に、プロパティのレコードソースの内容(クエリ)を削除して(仕様変更の為に作り直しています)、 プロパティのイベントの読み込み時にイベントプロシージャーを指定してVBでSQL等を書いています。 SQLを呼び出し、Loopでレコードセットの内容をサブフォーム内のテキストボックスへ表示させる、等。 でも行数が指定できないので一番最後のデータ1行だけが表示されます… どうやったらサブフォームの総行数や、データを表示させる行の指定等の制御がVBで出来るのでしょうか? またはこれは不可能なのでしょうか? どなたかご回答いただけると幸いです。 よろしくお願い致します!

みんなの回答

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

状況が良く分かりませんが、テーブルやクエリと連結しない表形式の フォームでは1行しか表示できません。 >VBでSQL等を書いています。 でしたら、フォームのレコードソースにそのSQLを指定すればよいのです。 レコードソースはプログラムで、いつでもダイナミックに変更できます。

noname#169207
質問者

お礼

いつもアドバイスありがとうございます! IIF文等を使用しないで値を参照して計算した数値も表示させたかったのでコードで書こうとしたのですが、 やはりVBAから表形式のサブフォームの列数をコントロールすることはできないんですね。 IIFを多様するとなんだかアクセスが壊れてしまうので(正しいSQL文でも不明なエラーを起こすんです…)コードで書こうと思ったのですが、なかなか難しいですね。 ありがとうございました!

関連するQ&A

専門家に質問してみよう