网络编程 
首页 > 网络编程 > 浏览文章

asp调用Word打印的代码

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )
调用Word打印... 
运行下列的脚本需要将IE的安全级别设为低,或在中级安全级别下将那个ActiveX控件设为启用,别忘记了: 
<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 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.Tables(1).Rows(tabRow).Cells(4).Range.ParagraphFormat.alignment=1 
'objWordDoc.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter(" ") 
'objWordDoc.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter(" ") 
'objWordDoc.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter("Regards,") 
'objWordDoc.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter(" ") 
'objWordDoc.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter("Daryl B. Morticum") 
'objWordDoc.Application.ActiveDocument.Paragraph.Add.Range.InsertAfter("Sales Associate") 
'objWordDoc.Application.ActiveDocument.Envelope.Insert Address 
' objWordDoc.Application.ActiveDocument.Paragraphs.Add.Range.InsertAfter("由廖家远设计") 
objWordDoc.Application.ActiveDocument.SaveAs "tempSample.doc", 0,False,"",True,"",False,False,False, False,False 
'objWordDoc.Application.printout() 
End Sub 
</script>
上一篇:巧用FileSystem组件实现WEB应用中的本地特定打印的方法
下一篇:asp下如何在ADO服务器端利用好缓存技术?
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。