VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2006/12/19(Tue) 09:42
投稿者へるぷ・みぃ
Eメール
URL
タイトルDBからエクセルへデータをセットする時のエラー


下記のコードを実行すると、
.Cells(1, 2).Value = rs(1)
でエラーが発生するのですが、理由がわかりません。
rs(1) を rs(1).Value にすると回避できるので、
既定のプロパティか何かが関係しているのかな?とは思うのですが・・・


' ActiveX Data Object Library
' Excel Library
' を参照設定
Sub Main()
  
  Dim cn      As ADODB.Connection
  Dim rs      As ADODB.Recordset
  Set cn = New ADODB.Connection
  cn.Open "UID=***;PWD=***;Database=***;Server=***;Driver={SQL Server};DSN='';"
  Set rs = cn.Execute("select '''aa', ''") ' "'aa" と "" を抽出
  
  Dim xlApp   As Excel.Application
  Dim xlBook  As Excel.Workbook
  Set xlApp = New Excel.Application
  Set xlBook = xlApp.Workbooks.Add()
  With xlBook.Worksheets(1)
    .Cells(1, 1).Value = rs(0) ' A1セルに 'aa をセット
    .Cells(1, 2).Value = rs(1) ' B1セルに空の文字列をセット
  End With
  xlBook.Close False
  xlApp.Quit
  Set xlBook = Nothing
  Set xlApp = Nothing
  
  rs.Close: Set rs = Nothing
  cn.Close: Set cn = Nothing
  
End Sub

ちなみに、抽出クエリ
select '''aa', '' ( "シングルクォート・a・a" と空の文字列 "" を抽出)

select '''aa', 'bb' ( "シングルクォート・a・a" と "b・b" を抽出)

select 'a''a', '' ( "a・シングルクォート・a" と空の文字列 "" を抽出)
にするとエラーが発生しなくなります。

それも意味が分かりません・・・

どのような理由で
select '''aa', '' ( "シングルクォート・a・a" と空の文字列 "" を抽出)
というような抽出クエリの時だけ
.Cells(1, 2).Value = rs(1)
でエラーが発生するのか教えていただけないでしょうか?


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -