dポイントプレゼントキャンペーン実施中!

EXCELのデータベースにADOによりASPでアクセスしていますがデー
タが再計算されないままにレコードセットにセットされてしまい
ます。毎回、EXCELを再計算させた後にデータをレコードセットに
セットするにはどうしたらよいでしょうか?
考えている通りに動けば時間によって取得されるレコード違って
くるはずなのですが?
EXCELのデータベースの抽出条件となるキーとなる列には時間によ
って変化する関数が設定されています。

A 回答 (1件)

途中まで作ったソースがあれば、そのソースを提示して頂けますか?


その方が、いろいろとアドバイスしやすいです。
よろしくお願いします。

この回答への補足

以下スクリプトですよろしくお願いします。

<%@ Page Language="VB" AspCompat="True" %>
<%
Response.Buffer = True
Response.Expires = -1
Response.AddHeader("Pragma", "no-cache")
Response.AddHeader("cache-control", "no-store")
Response.Cache.SetCacheability(HttpCacheability.NoCache)

Dim dToday
dToday = DateTime.Now.ToString()
Dim db = Server.CreateObject("ADODB.Connection")
Dim rs = Server.CreateObject("ADODB.RecordSet")
Dim strQuery = "SELECT 氏名,FLAG2,教科 FROM [Sheet1$A2:E40] WHERE FLAG2=1"
rs.CursorLocation = 2
rs.CursorLocation = 1

db.Mode = 1
db.ConnectionString=ConfigurationSettings.AppSettings("conStringAccEx5")
db.Open()
rs.Open(strQuery,db,0,3)

%>
<html>
<head>
<title>授業者一覧</title>
<script runat="Server">
Shared Function GetTime(context As HttpContext) As String
Return DateTime.Now.ToString()
End Function
</script>
</head>
<body>
<%=DateTime.Now.ToString()%>(<%=WeekdayName(Weekday(dToday))%>)<br><B>授業者一覧表</B>
<table border="1">
<tr>
<% For i As Integer=0 To rs.Fields.Count-1 %>
<th><%=rs.Fields.Item(i).Name %></th>
<% Next %>
</tr>
<% Do While Not rs.EOF %>
<tr>
<% For i As Integer=0 To rs.Fields.Count-1 %>
<td><%=rs.Fields.Item(i).Value %></td>
<% Next %>
</tr>
<%
rs.MoveNext
Loop
rs.Close()
db.Close()
%>
</table>
<A href="/koumu.htm">ホーム</A>
</body>
</html>

以上

Web.Configで接続文字列を以下のように設定しています。

<add key="conStringAccEx5" value="PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=d:\InetPub\wwwroot\mdb\tantoukouji.xls;Extended Properties=Excel 8.0;" />

補足日時:2008/02/15 16:16
    • good
    • 0

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