![]() |
#2
zfjyyzycl2008-04-18 10:08
这个问题比较奇怪
我的就可以打开 给你源代码,看看是不是一样的 <% '初始的进度条 response.write "<table cellpadding='0' cellspacing='0' border='0'>" response.write "<tr>" response.write "<td>" response.write "<span id=txt1 name=txt1 style='font-size:9pt'>等待开始......</span>" '这部分输出当前程序的运行状态 response.write "</td>" response.write "</tr>" response.write "<tr>" response.write "<td>" response.write "<table width=400 border='0' cellspacing='1' cellpadding='1'>" response.write "<tr>" response.write "<td bgcolor=ffffff height=9>" response.write "<img border="0" src='./images/jdt.jpg' width=0 height=16 id=img2 name=img2>" '这部分输出当前程序的运行进度 response.write "</td>" response.write "</tr>" response.write "</table>" response.write "<tr>" response.write "<td>" response.write" <span id=txt2 name=txt2 style='font-size:9pt'>0</span><span style='font-size:9pt'> % </span>" ' '这部分输出当前程序的运行百分比 response.write "</td>" response.write "</tr>" response.write "</table>" Response.Write "<script>txt1.innerHTML='正在读取您上传的开户申请表的内容,请稍等......'</script>"&VbCrLf '输出程序的动作 Response.Flush '立即将上述部分输出到屏幕,以免屏幕空白 set xlApp = CreateObject("Excel.Application") '定义EXECL对象 xlApp.DisplayAlerts = false '不显示警告 xlApp.Application.Visible=false strsource = server.MapPath(session("zfjfilename")) 'session("zfjfilename") 已经上传的EXECl格式的文件 set xlbook = xlApp.WorkBooks.Open(strsource) '打开EXECL文件 set xlsheet = xlbook.Worksheets(1) '仅读取第一个SHEET all_i=0 i = 4 '设定开始读取的位置 do while xlsheet.cells(i,1) <> "" '根据读取规则,确定要读取到什么位置,另外确定进度条的长度 i=i+1 all_i=all_i+1 loop i = 4 if all_i>0 then '如果有需要读取的数据 do while xlsheet.cells(i,1) <> "" Conn.Execute("Insert Into xls_zh(zh_sqbh,zh_zb,zh_km,zh_dwdm,zh_dwqc,zh_xh,zh_mc,zh_add_date,zh_user_id,zh_kh_bz,zh_kh_bz_name)values('"&xlsheet.Cells(i,3)&"','"&xlsheet.Cells(i,8)&"','"&xlsheet.Cells(i,6)&"','"&xlsheet.Cells(i,5)&"','"&xlsheet.Cells(i,4)&"',0,'"&xlsheet.Cells(i,9)&"','"&date&"',"&user_id&",0,'尚未开立')") '插入数据库 i = i + 1 jd=int((i-3)/all_i*400)/4 if oldjd<>jd then Response.write "<script>img2.width=" & oldjd*4 & " </script>"& VbCrLf '输出进度条的变化 Response.Write "<script>txt2.innerHTML="&cint(oldjd)&"</script>"&VbCrLf '输出百分比 oldjd=jd end if Response.Write "<script>txt1.innerHTML='正在读取您上传的开户申请表的内容,请稍等......'</script>"&VbCrLf '输出程序目前的动作 Response.Flush loop Response.Write "<script>txt1.innerHTML='读取您上传的开户申请表的内容完毕!'</script>"&VbCrLf '运行完毕后,输出运行结果 Response.Flush set xlsheet = nothing '关闭EXECL相关对象 set xlbook = nothing '关闭EXECL相关对象 xlApp.quit '关闭EXECL相关对象quit 必须有,否则每运行一次就能留下一个EXECL进程 else '如果没有要读取的内容 response.write " <script language=javascript>" response.write "alert('没有选择文件,或者上传的文件不是电子表格,请重新选择文件!')" response.write "history.go(-1)" response.write "</script>" end if %> |
在读取EXCEL表格文件时,若这个文件在此次开机后手动打开过.则asp则不能读取.会被报错.但是当重新启动电脑后,不动EXCEL文件.则ASP就可以正常读取.我想问一下这是什么原因.怎么样可以解决?请高手指教!