プロが教えるわが家の防犯対策術!

Excelファイル(Test.xls)の中のシート(sheet1)にあるセル(A3、B11等)
にある値を取得したい場合のSQL文の表記方法が、わかりません。何方か教えて頂けないでしょうか?

【サンプルプログラム】

Set objADO = CreateObject("ADODB.Connection")

objADO.Open "Driver={Microsoft Excel Driver (*.xls)};" & _
"DBQ=D:\Test.xls;" & _
"ReadOnly=1"

Set objRS = objADO.Execute("【?】")

すみませんが、よろしくお願い致します。

A 回答 (1件)

Excel (ワタシの環境では 2003)


の中身をこんな感じにしておいて
  | A   | B
===================
1 | ID    | Name
-------------------
2 | 1    | aaa
-------------------
3 | 2    | bbb
-------------------
4 | 3    | ccc

こういうような形であれば B3 セルの値をとることができます。
<%
' データソース
Const CONNECTION_STRING = "DRIVER=Microsoft Excel Driver (*.xls);DBQ=D:\ASP_TEST\Book1.xls"

' コネクションの作成
Dim adoCon
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open CONNECTION_STRING

' SQL
Dim sql
sql = "SELECT NAME FROM [Sheet1$] WHERE ID = 2"

' レコードセットの作成
Dim rec
Set rec = Server.CreateObject("ADODB.Recordset")
rec.Open sql, adoCon

' Response.Write(rec.Fields.Item(0)) でも可能
Response.Write(rec.Fields.Item("NAME"))

Call rec.Close()
Call adoCon.Close()

Set rec = Nothing
Set adoCon = Nothing

%>
    • good
    • 0
この回答へのお礼

naganaga_001様、ありがとうございました。
早速、使用してみます。

お礼日時:2007/02/07 13:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!