質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

1回答

11546閲覧

access vba ADOを利用して得たDBテーブルデータの値をフォーム画面に表示したい

nekomura

総合スコア132

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2016/03/02 07:00

わかりにくい内容かもしれませんがどうぞよろしくお願いいたします。

Accessで、フォーム画面を作っています。
表題にあるように、ADOを利用してSQLサーバーへ接続、テーブルのデータを取得(RecordSet)しています。
このデータを、ボタンのクリックイベントとしてメインフォームに設置しています。

新たにサブフォームを追加したのですが、ここにボタンのクリック結果を表示させたいのです。サブフォームはデータシート形式です。

つまり、メインフォームのプログラムであるRecordSetを、サブフォームのデータソース?にしたいのです。

どのようなプログラムを書けば、下記のコードの実行結果をサブフォームに出すことができるでしょうか。
何卒よろしくお願いいたします。

Private Sub command_Button_Click()

Dim dbCn As ADODB.Connection Dim dbRs As ADODB.Recordset Dim dbCom As ADODB.Command Set dbCn = New ADODB.Connection

dbCn.Open "Provider=SQLOLEDB.1;;Persist Security Info=True;User ID=eg;Initial Catalog=;Data Source=*"

Set dbCom = New ADODB.Command dbCom.ActiveConnection = dbCn dbCom.CommandText = Me!SQL 'dbCom.CommandText = "select * from eportnet_dbkg.dbo.tbmCountry" Set dbRs = New ADODB.Recordset Set dbRs = dbCom.Execute Do Until dbRs.EOF Debug.Print dbRs(0).Value & "," & dbRs(1).Value & "," & dbRs(2).Value _ & "," & dbRs(3).Value & "," & dbRs(4).Value & "," & dbRs(5).Value dbRs.MoveNext Loop dbRs.Close Set dbRs = Nothing dbCn.Close Set dbCn = Nothing Set dbCom = Nothing

End Sub

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nekomura

2016/03/03 01:04

申し訳ございませんでした。 なかなか回答がつかずせっぱつまってしまい、大変失礼いたしました。
guest

回答1

0

ベストアンサー

サブフォームのRecordsetプロパティにdbRsをセットすることで実現できると思います。
Set サブフォーム.Recordset = dbRs

https://msdn.microsoft.com/ja-jp/library/office/ff835419.aspx

投稿2016/03/02 19:05

thom.jp

総合スコア686

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nekomura

2016/03/03 01:05

ご丁寧ありがとうございます。 二度も同じような質問をしてしまい大変申し訳ありませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問