Asp classic 读取excel文件后刷新页面会生成错误

Asp classic 读取excel文件后刷新页面会生成错误,asp-classic,vbscript,Asp Classic,Vbscript,我正在使用我在网上找到的代码读取excel文件: <% Option Explicit %> <html> <body> <% Dim objConn, objRS, strSQL Dim x, curValue Dim valuesArray() strSQL = "SELECT * FROM A1:A200" Set objConn = Server.CreateObject("ADODB.Connection") objConn.Open "D

我正在使用我在网上找到的代码读取excel文件:

<% Option Explicit %>
<html>
<body>
<%
Dim objConn, objRS, strSQL
Dim x, curValue
Dim valuesArray()

strSQL = "SELECT * FROM A1:A200"

Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "DRIVER={Microsoft Excel Driver (*.xls)}; IMEX=1; HDR=NO; "&_
    "Excel 8.0; DBQ=" & Server.MapPath("myExcel.xls") & "; "

Set objRS=objConn.Execute(strSQL)

Response.Write("<table border=""1"">")
Response.Write("<tr>")

For x=0 To objRS.Fields.Count-1
   Response.Write("<th>" & objRS.Fields(x).Name & "</th>")
Next

Response.Write("</tr>")

Do Until objRS.EOF

    Response.Write("<tr>")

    For x=0 To objRS.Fields.Count-1
        curValue = objRS.Fields(x).Value
        If IsNull(curValue) Then
            curValue="N/A"
        End If
        curValue = CStr(curValue)
        valuesArray(x) = curValue
        Response.Write("<td>" & valuesArray(x) & "</td>")
    Next
    Response.Write("</tr>")
    objRS.MoveNext

Loop

objRS.Close
Response.Write("</table>")
objConn.Close

Set objRS=Nothing
Set objConn=Nothing
%>
</body>
</html>

第一次访问页面时,excel文件被正确读取。但如果刷新页面,则会出现以下错误:

提供程序错误“80004005”

未明错误


您是否知道是什么原因导致此错误,以及如何修复此错误?

大多数情况下,此错误是因为您刷新太快;如果你等待10秒左右,它不会给你这个错误。尽管ASP/ADO应用程序支持多用户访问,但Excel电子表格不支持。因此,这种查询和更新信息的方法不支持多用户并发访问


请参见

大多数情况下,此错误是因为刷新速度太快,如果您要在哪里等待10秒左右,则不应出现此错误。尽管ASP/ADO应用程序支持多用户访问,但Excel电子表格不支持。因此,这种查询和更新信息的方法不支持多用户并发访问。您是否知道不使用ADOs读取excel文件的其他方法?我试着调整刷新时间,大约1分钟,这太简单了long@user571099试试看,还有我前一段时间在这里发布的问题,希望能有所帮助,祝你好运:)@user571099只是为了让每个人都知道和/或如果有人有同样的问题,你是如何解决的?是行星源代码链接,还是我关于stackoverflow问题的链接,还是完全不同的东西?是你的microsoft链接让我意识到我不能使用adodb。我切换到oledb。请看这个