输出excel或word文件报表。

FRtfp 2003-09-12 12:58:29
Asp数据显示页面输出excel或word文件报表。

能不能给原代码
...全文
86 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
FRtfp 2003-09-15
  • 打赏
  • 举报
回复
为什么我在用ASP输出excel或word文件报表中都会出现对像不能建立之类的错误?

怎么简单?
hesyer 2003-09-15
  • 打赏
  • 举报
回复
我也碰到过,但是如果数据项没有空缺的就没有问题~!
FRtfp 2003-09-13
  • 打赏
  • 举报
回复
还有没有别的方法?
FRtfp 2003-09-13
  • 打赏
  • 举报
回复
有没有简单的?
yonghengdizhen 2003-09-13
  • 打赏
  • 举报
回复
进行一定的正则替换,将待转换数据处理成符合自动转换格式要求的数据(主要是进行分隔符处理,将原有分隔符进行转义,将新的<TR><TD></TD></TR>转换成适当的分隔字符[word只支持单个字符作为表格用分隔符])

ConvertToTable 方法示例

本示例将活动文档的前三段转换为表格。

Set aDoc = ActiveDocument
Set myRange = aDoc.Range(Start:=aDoc.Paragraphs(1).Range.Start, _
End:=aDoc.Paragraphs(3).Range.End)
myRange.ConvertToTable Separator:=wdSeparateByParagraphs本示例在插入点插入文字,并将以逗号为分隔符的文本转换为带格式的表格。

With Selection
.Collapse
.InsertBefore "one, two, three"
.InsertParagraphAfter
.InsertAfter "one, two, three"
.InsertParagraphAfter
End With
Set myTable = _
Selection.ConvertToTable(Separator:=wdSeparateByCommas, _
Format:=wdTableFormatList8)

具体转换你可以在word中用宏记录器记录一个转换操作然后根据应用环境差异将vba语法转换成asp支持的vbs语法

在具体的转换过程中需要用到word特定的模式查找功能,vba文档中都有记载
yonghengdizhen 2003-09-13
  • 打赏
  • 举报
回复
进行一定的正则替换,将待转换数据处理成符合自动转换格式要求的数据(主要是进行分隔符处理,将原有分隔符进行转义,将新的<TR><TD></TD></TR>转换成适当的分隔字符[word只支持单个字符作为表格用分隔符])

ConvertToTable 方法示例

本示例将活动文档的前三段转换为表格。

Set aDoc = ActiveDocument
Set myRange = aDoc.Range(Start:=aDoc.Paragraphs(1).Range.Start, _
End:=aDoc.Paragraphs(3).Range.End)
myRange.ConvertToTable Separator:=wdSeparateByParagraphs本示例在插入点插入文字,并将以逗号为分隔符的文本转换为带格式的表格。

With Selection
.Collapse
.InsertBefore "one, two, three"
.InsertParagraphAfter
.InsertAfter "one, two, three"
.InsertParagraphAfter
End With
Set myTable = _
Selection.ConvertToTable(Separator:=wdSeparateByCommas, _
Format:=wdTableFormatList8)

具体转换你可以在word中用宏记录器记录一个转换操作然后根据应用环境差异将vba语法转换成asp支持的vbs语法

在具体的转换过程中需要用到word特定的模式查找功能,vba文档中都有记载
FRtfp 2003-09-13
  • 打赏
  • 举报
回复
介绍一下怎么用
急啊
yonghengdizhen 2003-09-13
  • 打赏
  • 举报
回复
这么进行表格转换是一种很笨的办法..
为什么不利用word自己提供的表格自动转换功能?
yonghengdizhen 2003-09-13
  • 打赏
  • 举报
回复
这么进行表格转换是一种很笨的办法..
为什么不利用word自己提供的表格自动转换功能?
FRtfp 2003-09-13
  • 打赏
  • 举报
回复
activeX部件不能创建对像:"word.document"

怎么解决?
alan815 2003-09-13
  • 打赏
  • 举报
回复
直接贴过来的,我也没试过。

<Table id="myData" border=1 align=center>
<Tr align=center>
<Td>表格转换</Td>
<Td>表格转换</Td>
<Td>表格转换</Td>
<Td>表格转换</Td>
</Tr>
<Tr align=center>
<Td>表格转换</Td>
<Td>表格转换</Td>
<Td align=right>表格转换</Td>
<Td>表格转换</Td>
</Tr>
<Tr align=center>
<Td>表格转换</Td>
<Td>表格转换</Td>
<Td align=right>表格转换</Td>
<Td>表格转换</Td>
</Tr>
<Tr align=center>
<Td>表格转换</Td>
<Td>表格转换</Td>
<Td align=right>表格转换</Td>
<Td>表格转换</Td>
</Tr>
</Table>
<center><input type=button onclick="vbscript:buildDoc '',4" value="转换成Word文档"><script language="vbscript">
Sub buildDoc(theTemplate,intTableRows)
Dim Table1
set Table1 = document.all.myData
row = Table1.rows.length
Set objWordDoc = CreateObject("Word.Document")
ObjWordDoc.Application.Visible=True
Dim theArray(4,4)
'Redim Preserve theArray(4,row)
colnum = Table1.rows(1).cells.length
for i=0 to row-1
for j=0 to colnum-1
theArray(j+1,i+1) = Table1.rows(i).cells(j).innerHTML
next
next

intNumrows = 4

objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("转换后的表格")
objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("")
objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("")

Set rngPara = objWordDoc.Application.ActiveDocument.Paragraphs(1).Range
With rngPara
.Bold = True
.ParagraphFormat.Alignment = 1
.Font.Name = "Arial"
.Font.Size = 12
End With

Set rngCurrent = objWordDoc.Application.ActiveDocument.Paragraphs(3).Range
Set tabCurrent = ObjWordDoc.Application.ActiveDocument.Tables.Add(rngCurrent,intNumrows,4)

for i = 1 to colnum
objWordDoc.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.InsertAfter theArray(i,1)
objWordDoc.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.ParagraphFormat.alignment=1
next
tabRow = 2

For j = 2 to intNumrows
'ObjWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Borders.Enable=False
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(1).Range.InsertAfter theArray(1,j)
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(1).Range.ParagraphFormat.alignment=1
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(2).Range.InsertAfter theArray(2,j)
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(2).Range.ParagraphFormat.alignment=1
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(3).Range.InsertAfter FormatCurrency(theArray(3,j))
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(3).Range.ParagraphFormat.alignment=2
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(4).Range.InsertAfter theArray(4,j)
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(4).Range.InsertAfter Chr(10)
objWordDoc.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(4).Range.ParagraphFormat.alignment=1
tabRow = tabRow + 1
Next

objWordDoc.Application.ActiveDocument.SaveAs "tempSample.doc", 0,False,"",True,"",False,False,False, False,False
objWordDoc.Application.printout()


End Sub
</script>
FRtfp 2003-09-13
  • 打赏
  • 举报
回复
FileDialog未定义
怎么解决啊
gjd111686 2003-09-12
  • 打赏
  • 举报
回复
function OpenFile()
{
FileDialog.CancelError=true;
FileDialog.Filter="Word模板|*.doc|Word模板|*.dot";
FileDialog.ShowOpen();
var WordApp=new ActiveXObject("Word.Application");
WordApp.Application.Visible=false;
var Doc=WordApp.Documents.Open(FileDialog.filename);
Doc.Activate();
Doc.Parent.Options.InsertedTextColor=4;
Doc.Parent.Options.InsertedTextMark=2;
Doc.Parent.Options.DeletedTextColor=4;
Doc.Parent.Options.DeletedTextMark=1;
Doc.TrackRevisions=true;
Doc.PrintRevisions=true;
Doc.ShowRevisions=true;
Doc.Application.UserName="";
var Range=doc.Range();
Range.Select();
var Selection=WordApp.Selection;
Selection.Copy();
App.focus();
document.execCommand("Paste");
App.focus();
WordApp.DisplayAlerts=false;
Doc.Close();
WordApp.DisplayAlerts=true;
WordApp.Quit();
return false;
}

28,391

社区成员

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

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