关于Excel文件生成的问题.

tatty_bad 2008-06-06 05:10:14
我需要根据一个已经存在的Excel,去生成另外三份Excel

因为需要对数据做一些处理,所以不能是简单的复制了.

测试的时候很正常,但是今天用的人在做的时候却怎么也不行了.

我现在的过程是这样的.

把原始Excel上传,然后通过Asp去读取Excel里面的内容,然后根据一定的规则,进行数据处理,然后再输出,生成对应的三份Excel.

一直到数据处理,都是正常的,但是在输出的时候,就不行了.在FSO.Write Content 这里提示错误无效的调用过程或者参数..

因为要再生成的原因,所以我在处理数据的时候用了Chr(9)和Chr(13)来分割每一部分数据.难道说就是因为这里的原因?导致ASP把Content当作很多参数了?

后来仔细检查后发现就是原始Excel中两行数据在搞鬼,删除了之后一切正常,不删除就是那个错误....

所以来问问这里的高手,可有谁知道为什么?或者遇到过这样的问题...如何解决.谢谢.能解决问题者高分相送.

当前先给50分吧.

我的思路是:把chr(9),chr(13)改用Table,Tr,Td来处理.因为时间关系,还没有来得及测试..

等待大家的答复...

...全文
87 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qidizi 2008-06-11
  • 打赏
  • 举报
回复
Set F=Fso.CreateTextFile(FileDir)
F.Write FileContent
确定是这二行出错话,
把参数内容显示出来瞧一下有什么不同,再找原因,也就是给它传了什么进去.
tatty_bad 2008-06-11
  • 打赏
  • 举报
回复
怎么说呢,我也搞不明白,删除了这行数据,就一切正常,不删除就是错误...

而我改用Stream方式来写,却又没有错误了...

算了,想不明白的了...
wcwtitxu 2008-06-10
  • 打赏
  • 举报
回复
我这么测试,没有问题


<%
Dim content, fso, file
content = "<table border=""1"" cellpadding=""2"" cellspacing=""0"" bordercolor=""#cccccc"" style=""border-collapse: collapse;"">"
content = content & vbCrlf & "<tr>"
content = content & vbCrlf & "<td>1</td>"
content = content & vbCrlf & "<td>CB1SK-001</td>"
content = content & vbCrlf & "<td>LH-001</td>"
content = content & vbCrlf & "<td>2</td>"
content = content & vbCrlf & "<td>40-305469-1111</td>"
content = content & vbCrlf & "<td>Assy FPC,Keyboard,W/Keypad,CR1CC,V1T1,ROHS</td>"
content = content & vbCrlf & "<td>1</td>"
content = content & vbCrlf & "<td>LongWei</td>"
content = content & vbCrlf & "<td></td>"
content = content & vbCrlf & "<td>MD</td>"
content = content & vbCrlf & "<td>LH</td>"
content = content & vbCrlf & "</tr>"
content = content & vbCrlf & "</table>"


Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set file = fso.CreateTextFile(Server.MapPath("xxx.xls"))
file.Write content
file.Close
Set file = Nothing
Set fso = Nothing
%>



还没明白,到底楼主是什么样的情况
tatty_bad 2008-06-09
  • 打赏
  • 举报
回复
<table border="1" cellpadding="2" cellspacing="0" bordercolor="#cccccc" style="border-collapse: collapse;">
<tr>
<td>1</td>
<td>CB1SK-001</td>
<td>LH-001</td>
<td>2</td>
<td>40-305469-1111</td>
<td>Assy FPC,Keyboard,W/Keypad,CR1CC,V1T1,ROHS </td>
<td>1</td>
<td>LongWei</td>
<td></td>
<td>MD</td>
<td>LH</td>
</tr>
</table>

检查到最后,就是这段代码,在写入文件的时候,出错了.
可是我没有看出来有什么问题啊 ...

FSO写入的时候提示是

Microsoft VBScript 运行时错误 (0x800A0005)
无效的过程调用或参数

Set F=Fso.CreateTextFile(FileDir)
F.Write FileContent

也就是Write这后面的FileContent出问题了,这个地方的内容就是上面那段代码啊...

谁能帮我看看,谢谢了.
tatty_bad 2008-06-09
  • 打赏
  • 举报
回复
谁能给我一个答案么???
jhwcd 2008-06-07
  • 打赏
  • 举报
回复
我想可能是里面的字符有单引号之类的字符没有处理吧。能不能吧代码贴出来看看。
xiaojing7 2008-06-07
  • 打赏
  • 举报
回复
不懂,顶

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧