| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 538 人关注过本帖
标题:asp读取excel问题
只看楼主 加入收藏
lifongmaples
Rank: 1
等 级:新手上路
帖 子:81
专家分:0
注 册:2006-8-27
结帖率:0
收藏
 问题点数:0 回复次数:1 
asp读取excel问题
在读取EXCEL表格文件时,若这个文件在此次开机后手动打开过.则asp则不能读取.会被报错.但是当重新启动电脑后,不动EXCEL文件.则ASP就可以正常读取.我想问一下这是什么原因.怎么样可以解决?请高手指教!
搜索更多相关主题的帖子: excel asp EXCEL ASP 
2008-04-17 22:32
zfjyyzycl
Rank: 2
等 级:论坛游民
帖 子:239
专家分:10
注 册:2006-4-15
收藏
得分:0 
这个问题比较奇怪
我的就可以打开
给你源代码,看看是不是一样的
<% '初始的进度条
    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
    %>
2008-04-18 10:08
快速回复:asp读取excel问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.056878 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved