Microsoft Access Club Access超初心者対象Forum Access初級者対象Forum Access初・中級者対象Forum Access VBA Tips Forum DAO、ADO、SQL Forum

     

リストへもどる

投稿記事の一括表示

タイトルレコードセットの内容をレポートのレコードソースに指定する方法
記事No16747
投稿日: 2011/06/02(Thu) 13:28
投稿者みちよ
OS:win-xp
Access Version:access2003

以下のようにレコードセットの内容をレコードソースに指定したら
下記@にて『コンパイルエラー:型が一致しません』のエラーが発生してしまいました。
色々調査してみたのですがわかりませんでした。
くだらない質問をして申し訳ないのですが教えていただけますでしょうか。

Private Sub Report_Open(Cancel As Integer)

Dim con As New ADODB.Connection
Dim rd As New ADODB.Recordset

con.Open "Provider=SQLOLEDB;data Source=XXX.XXX.XXX.XX;Initial Catalog=TEST;User Id=TEST;Password=TEST"

Set rd = New ADODB.Recordset

rd.Open "SELECT * FROM SHAIN", con, adOpenKeyset, adLockReadOnly

Reports!レポート1.RecordSource = rd ------>@

Set rd = Nothing
Set con = Nothing

End Sub

タイトルRe: レコードセットの内容をレポートのレコードソースに指定する方法
記事No16748
投稿日: 2011/06/02(Thu) 13:42
投稿者Hank
"RecordSource/レコードソース" プロパティ
http://office.microsoft.com/ja-jp/access-help/HA001232789.aspx
 フォームまたはレポートのデータ ソースを示します。値の取得および設定が可能です。
 文字列型 (String) の値を使用します。
 ^^^^^^^^
RecordSource プロパティに設定出来るのはテーブル/クエリ名またはSQL文だけです。
レコードセットは設定できません

タイトルRe^2: レコードセットの内容をレポートのレコードソースに指定する方法
記事No16754
投稿日: 2011/06/03(Fri) 09:33
投稿者みちよ
> "RecordSource/レコードソース" プロパティ
> http://office.microsoft.com/ja-jp/access-help/HA001232789.aspx
>  フォームまたはレポートのデータ ソースを示します。値の取得および設定が可能です。
>  文字列型 (String) の値を使用します。
>  ^^^^^^^^
> RecordSource プロパティに設定出来るのはテーブル/クエリ名またはSQL文だけです。
> レコードセットは設定できません

ご回答ありがとうございます。

> RecordSource プロパティに設定出来るのはテーブル/クエリ名またはSQL文だけです。
> レコードセットは設定できません

 ⇒仮にSQLサーバー上のDBにADO接続したい場合は、
  下記のようなロジックにしましたが@にて構文エラーとなりました。
  どこがおかしいでしょうか?教えていただけますか?

Private Sub Report_Open(Cancel As Integer)

Dim con As New ADODB.Connection

con.Open "Provider=SQLOLEDB;data Source=XXX.XXX.XXX.XX;Initial Catalog=TEST;User Id=TEST;Password=TEST"

Reports!レポート1.RecordSource = "SELECT * FROM SHAIN", con, adOpenKeyset, adLockReadOnly ---> @

Set con = Nothing

End Sub

タイトルRe^3: レコードセットの内容をレポートのレコードソースに指定する方法
記事No16755
投稿日: 2011/06/03(Fri) 09:45
投稿者Hank
>   ⇒仮にSQLサーバー上のDBにADO接続したい場合は、
>    下記のようなロジックにしましたが@にて構文エラーとなりました。
>    どこがおかしいでしょうか?教えていただけますか?

06/02(木)-13:42 No.16748
と同じです。
「RecordSource プロパティに設定出来るのは テーブル/クエリ名、またはSQL文だけです。」
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

もしかして、外国の方ですか?


Reports!レポート1.RecordSource = "SELECT * FROM SHAIN", con, adOpenKeyset, adLockReadOnly
                                  ^^^^^^^^^^^^^^^^^^ ^^ ^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^
                    1      2  3    4       5
1.SQL文
2.Comma
3.ADO.Connectionオブジェクト
4.ADO.CursorTypeEnum
5.ADO.LockTypeEnum

タイトルRe^3: レコードセットの内容をレポートのレコードソースに指定する方法
記事No16756
投稿日: 2011/06/03(Fri) 10:09
投稿者スナフキン
>  Private Sub Report_Open(Cancel As Integer)
>      
      'Dim con     As New ADODB.Connection
>     
      'con.Open "Provider=SQLOLEDB;data Source=XXX.XXX.XXX.XX;Initial Catalog=TEST;User Id=TEST;Password=TEST"
>      
      Reports!レポート1.RecordSource = "SELECT * FROM [Provider=SQLOLEDB;data Source=XXX.XXX.XXX.XX;Initial Catalog=TEST;User Id=TEST;Password=TEST].SHAIN" ', con, adOpenKeyset, adLockReadOnly ---> @
>  
      'Set con = Nothing
>  
>  End Sub

これでは?

あとリンクテーブルを使うのもいいかと。
さてと、理解してくれるだろうか^^;;

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No パスワード

ページの先頭へ 前ページへ戻る