怎样用ASP生成WORD文件?
请给出具体例子,谢谢! 问题点数:35、回复次数:13Top
1 楼myand(myand)回复于 2001-12-07 11:53:28 得分 15
请看下贴中的回复
http://www.csdn.net/expert/topic/397/397503.shtmTop
2 楼spgoal(敏捷的狗狗)回复于 2001-12-07 12:18:32 得分 0
多谢!
请问有无Word.Application的相关资料?Top
3 楼spgoal(敏捷的狗狗)回复于 2001-12-07 13:00:04 得分 0
用<% Response.ContentType = "application/msword" %>好象可以生成一般的WORD文档,但如果该也有循环输出的语句就不能生成WORD文档了,怎么解决这个问题?Top
4 楼liaogs(夜归人)回复于 2001-12-07 13:47:08 得分 20
//toword.asp
<html>
<head>
<title>Build Document by Script</TITLE>
</HEAD>
<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>This is a test</Td>
<Td align=right>300.50</Td>
<Td>一级</Td>
</Tr>
<Tr align=center>
<Td>产品二</Td>
<Td>This is a test</Td>
<Td align=right>300.50</Td>
<Td>一级</Td>
</Tr>
<Tr align=center>
<Td>产品三</Td>
<Td>This is a test</Td>
<Td align=right>300.50</Td>
<Td>一级</Td>
</Tr>
</Tabld>
<input type=button onclick="vbscript:buildDoc '',4" value="build">
<BODY>
</BODY>
</HTML>
<script language="vbscript">
Sub buildDoc(theTemplate,intTableRows)
Dim wApp
Set wApp = CreateObject("Word.Application")
If Err.number > 0 Then
Alert "没法保存为Word文件,请正确安装Word97"
END IF
wApp.visible = True
wApp.Documents.add
wApp.Selection.TypeParagraph
wApp.Selection.Font.Bold = True
wApp.Selection.TypeText "test"
Dim Table1
set Table1 = document.all.myData
'row = Table1.rows.length
'Set wApp = CreateObject("Word.Document")
'wApp.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
wApp.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("测试的表格")
wApp.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("")
wApp.Application.ActiveDocument.Paragraphs.Add.Range.InsertBefore("")
Set rngPara = wApp.Application.ActiveDocument.Paragraphs(1).Range
With rngPara
.Bold = True
.ParagraphFormat.Alignment = 1
.Font.Name = "Arial"
.Font.Size = 12
End With
Set rngCurrent = wApp.Application.ActiveDocument.Paragraphs(3).Range
Set tabCurrent = wApp.Application.ActiveDocument.Tables.Add(rngCurrent,intNumrows,4)
for i = 1 to colnum
wApp.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.InsertAfter theArray(i,1)
wApp.Application.ActiveDocument.Tables(1).Rows(1).Cells(i).Range.ParagraphFormat.alignment=1
next
tabRow = 2
For j = 2 to intNumrows
'wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Borders.Enable=False
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(1).Range.InsertAfter theArray(1,j)
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(1).Range.ParagraphFormat.alignment=1
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(2).Range.InsertAfter theArray(2,j)
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(2).Range.ParagraphFormat.alignment=1
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(3).Range.InsertAfter FormatCurrency(theArray(3,j))
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(3).Range.ParagraphFormat.alignment=2
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(4).Range.InsertAfter theArray(4,j)
'wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(4).Range.InsertAfter Chr(10)
wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(4).Range.ParagraphFormat.alignment=1
tabRow = tabRow + 1
Next
' wApp.Application.ActiveDocument.Tables(1).Rows(tabRow).Cells(4).Range.ParagraphFormat.alignment=1
'wApp.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter(" ")
'wApp.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter(" ")
'wApp.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter("Regards,")
'wApp.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter(" ")
'wApp.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter("Daryl B. Morticum")
'wApp.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter("Sales Associate")
'wApp.Application.ActiveDocument.Envelope.Insert Address
' wApp.Application.ActiveDocument.Paragraphs.Add.Range.InsertAfter("由廖家远设计")
wApp.Application.ActiveDocument.SaveAs "tempSample.doc", 0,False,"",True,"",False,False,False, False,False
'wApp.Application.printout()
End Sub
</script>
Top
5 楼spgoal(敏捷的狗狗)回复于 2001-12-07 14:01:15 得分 0
谢谢,请问哪里有相关的属性、方法参考?
是否是WSH?Top
6 楼spgoal(敏捷的狗狗)回复于 2001-12-07 14:43:04 得分 0
顶!Top
7 楼spgoal(敏捷的狗狗)回复于 2001-12-07 17:21:48 得分 0
up!:)Top
8 楼myand(myand)回复于 2001-12-07 21:17:47 得分 0
查 Word Help -> Microsoft Visual Basic 参考Top
9 楼spgoal(敏捷的狗狗)回复于 2001-12-07 22:34:44 得分 0
MSDN?Top
10 楼myand(myand)回复于 2001-12-07 22:41:02 得分 0
打开MS Word 的 Help
Click "Microsoft Word Visual Basic 参考"
内有详细说明Top
11 楼spgoal(敏捷的狗狗)回复于 2001-12-07 23:18:51 得分 0
OK,谢谢Top
12 楼spgoal(敏捷的狗狗)回复于 2001-12-08 10:50:41 得分 0
没有啊,找不到:(Top
13 楼julyclyde(Java初学(大学不教只好自己学))回复于 2001-12-08 23:04:54 得分 0
Office development editionTop




