• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ACCESS SQLで複数データ表示させるには?)

ACCESS SQLで複数データ表示させるには?

このQ&Aのポイント
  • ACCESS SQLを使用して、フォームにテーブルの全レコードを表示させる方法を教えてください。
  • 上のコードでは、テーブルの全レコードを表示させるために必要な部分が欠けています。
  • この問題を解決するために、以下のリンクを参照しましたが、解決できませんでした。

質問者が選んだベストアンサー

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

ええと・・たとえばレコードが一つだけなら何も問題は無いですよね? まず単票フォームの場合だったとしましょう。 当然1レコードしか表示できないわけですので 私だったらこんな風に考えます(あくまでも一例です) アクティブX コントロールのスピンボタンコントロールを配置します で、そのコントロールの値の増減によって、Rs.MoveNextやPreviousしてから それぞれの値の代入を行えば出来るかと思います。 スピンボタンコントロールは、OldValue の値を持っていてくれないので Public 変数にでもいったん退避させて置くしかないかも Dim SpnVal as Long フォームのオープン時にSpnVal = 0 レコードセットを adOpenDynamic で開いておく スピンコントロール(仮名 Spn)の更新時処理に Private Sub spn_Updated(Code As Integer) if SpnVal > Me!SpnVal Then Rs.MovePrevious それぞれのコントロールに代入処理 Else Rs.MoveNext それぞれのコントロールに代入処理 End if spnVal = Me!spn End Sub 大雑把に言ってこんな風かと思いますが フォームが帳票タイプだと実用的なのは不可能だと思います。 レコード数分のコントロールを予め作っておくのは愚かですし 連結コントロールのような分けにはいきません。 何故、非連結にしたいのか分かりませんが、ユーザーのご修正を排除したいのなら フォームのプロパティで、更新・削除・追加 の許可を「いいえ」にしておくとか レコードセットをスナップショットにしておけば済むかとおもいますよ。

その他の回答 (1)

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

Private Sub Form_Load() mySQL = "select * from テーブル" Me.RecordSource = mySQL End Sub とかの方が良いと思いますよ。 それと、折角なら Access Club さんで質問されたほうが良かったのにと思います。 お待ち申しております。。。 ※その時は、こっちは閉じてね!

PearlJam69
質問者

お礼

ありがとうございます。 >Me.RecordSource = mySQL レコードソースのことをすっかり忘れてました。 >折角なら Access Club さんで質問されたほうが Access Club で質問できる事をすっかり忘れてました。

PearlJam69
質問者

補足

あぁ、すいません! お礼した後なんですが、もう一度ご回答願います! 前提を書き忘れていました! テキストボックスは非連結なんです。 非連結にしたいんです。 なので、テキストボックスに代入したんです。 よろしくお願いします!

関連するQ&A