曾经收集的使用代理创建Word文档的一段代码,现在贴出来分享
需要注意的是,如果是B/s下使用,则服务器上必须安装又MS Word,否则会报错哦
1、代理Create Word Document
Option Public
Use "WordReport"
Sub Initialize
Dim ws As New NotesUIWorkspace
Dim view As NotesView
Dim wordfilepath As String
wordfilepath= ""' create an empty file
Set view = ws.CurrentView.View
Set report = New WordReport(wordfilepath, False)
'Call report.writeTextToBookmark("TestBookmark", "Test")
Call report.setVisibility(True)
End Sub
2、WordReport脚本库的代码
%REM ##############################################################################################
Sub new(xlFilename As String, isVisible As Boolean)
SubDelete()
FunctionwriteTextToBookmark(NotesText as String, BookmarkName as String)
Function save()
FunctionsaveAs(filename as String)
Function quit()
Function setVisibility(isVisible As Boolean)
Function getVersion() As String
'-----------------------------------------------------------------
Example Code inside an application database:
Const WORDPATH= "C:/temp/TestWord.doc"
Dim session As New NotesSession
Dim db As NotesDatabase
Dim report As WordReport
Set db = session.CurrentDatabase
Set report= new WordReport (WORDPATH, false)' false = don't show word
Messagebox report.getversion()
Call report.writeTextToBookmark("Bookmark1", "Hello world")' bookmark must exist in word template
Call report.setVisibility(true)
%END REM ##############################################################################################
'-------------------------------------------------------------
' General
'-------------------------------------------------------------
Const WORD_APPLICATION= "Word.application"
'-------------------------------------------------------------
' Errors
'-------------------------------------------------------------
Private Const BASEERROR= 1100
'-------------------------------------------------------------
' Version Information
'-------------------------------------------------------------
Const REG_97= "Software//Microsoft//Office//8.0//Common//InstallRoot"'Registry Key Office 97
Const REG_2000= "Software//Microsoft//Office//9.0//Common//InstallRoot"'Registry Key Office 2000
Const REG_XP= "Software//Microsoft//Office//10.0//Common//InstallRoot"'Registry Key Office XP
Const REG_2003="Software//Microsoft//Office//11.0//Common//InstallRoot"'Registry Key Office 2003
Const NAME_97= "Office 97"
Const NAME_2000= "Office 2000"
Const NAME_XP= "Office XP"
Const NAME_2003= "Office 2003"
'==================================================================================================
' Word Report
'==================================================================================================
Class WordReport
Private wordApp As Variant' Application object
Private wordDoc As Variant' Word document
Private strFilePath As String
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' constructor
'- creates the word application object
'- can use a file (.doc or .dot) as template
'- creates an wmpty document when filename is empty
' - application can be set to visible/invisible
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Sub new(wordFilename As String, isVisible As Boolean)
On Error Goto GeneralError
Set wordApp = CreateObject(WORD_APPLICATION)' open the application
wordApp.Documents.Add wordFilename' create a Word document
wordApp.Visible = isVisible' make it visible (or not)
Set wordDoc= wordApp.ActiveDocument' get document object for later use
strFilePath = wordFilename' store the filename
Goto ExitSub
GeneralError:
If Not (wordApp Is Nothing) Then wordApp.quit' quit, if there is an error
Resume ExitSub
ExitSub:
End Sub
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' destructor
' - is invoked when you delete the object via e.g. "delete report"
'- see "delete" keyword in help
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Sub Delete
End Sub
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' write text to a bookmark
' - a text is written to a predefined bookmark in the word document
'- 1 = bookmark was written successfully, 0 = error
'- using a bookmark twice inserts both texts: the second in front of the first
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Function writeTextToBookmark(BookmarkName As String, textValue As String) As Integer
Dim wr As Variant
If wordDoc.Bookmarks.Exists(BookmarkName) Then
Set wr = wordDoc.Bookmarks(BookmarkName).Range
wr.InsertAfter textValue
writeTextToBookmark = 1
Else
writeTextToBookmark = 0
End If
End Function
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' save file
' - file gets saved at the position where it was created from
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Function save
wordDoc.SaveAs( strFilePath )
End Function
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' save file at a designated location
' - file gets saved at the designated location
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Function saveAs(newFilename)
wordDoc.SaveAs( newFileName )
End Function
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' quit excel
'- quits word, if it is still running
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Function quit
If Not (wordApp Is Nothing) Then
wordApp.Quit
Set wordApp = Nothing
End If
End Function
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' set visibility
'- switches between visible and invisible
'- does this if it makes sense only
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Function setVisibility(isVisible As Boolean)
If (isVisible And Not wordApp.Visible) Then wordApp.Visible = True
If (Not isVisible And wordApp.Visible)ThenwordApp.Visible = False
End Function
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' get version
'- reads the currently installed Word (Office) version from the registry (Windows only)
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Function getVersion() As String
On Error Goto GeneralError
Dim formula As String
Dim SWVersion As String
Dim Versions List As String
Dim v As Variant
'----------------------------------------------------------------------
' Initialize all possible versions
'----------------------------------------------------------------------
Versions(NAME_97)= REG_97
Versions(NAME_2000)= REG_2000
Versions(NAME_XP)= REG_XP
Versions(NAME_2003)= REG_2003
'----------------------------------------------------------------------
' test for installed version
'----------------------------------------------------------------------
Forall vers In Versions
formula$ = | (@RegQueryValue("HKEY_LOCAL_MACHINE"; "| & vers & |";"Path")) |
v = Evaluate( formula$ )
If v(0) <> "" Then
getVersion = Listtag(vers)
Goto ExitSub
End If
End Forall
getVersion = ""
Goto ExitSub
GeneralError:
getVersion = ""
Resume ExitSub
ExitSub:
End Function
End Class
分享到:
相关推荐
本示例着重讲解如何利用JavaScript技术将TinyMCE编辑器中的内容导出为Word文档,以便用户可以离线查看或进一步处理。 在TinyMCE编辑器中,内容是通过HTML代码存储的。因此,导出为Word文档的核心思路是将HTML转换为...
6. **WordAutomation.cpp/h**:核心的自动化操作代码可能在这里,包含创建Word实例、打开文档、访问表格、填充数据和保存文件的函数。 7. **StdAfx.cpp/h**:预编译头文件,通常包含常用库的引用,以提高编译速度。...
1. **软件界面管理机制.doc**:这份文档可能讲解了MTK平台上的用户界面(UI)管理原理,包括如何创建和管理UI组件,如菜单、对话框、控件等,以及如何处理用户交互事件。此外,它可能还会涉及UI布局设计和性能优化。 ...
在日常工作中,特别是对于那些需要处理大量Word文档的代理公司员工来说,删除文档中的页眉和页脚是一项繁琐的任务。然而,通过使用Visual Basic for Applications (VBA)宏,可以大大提高工作效率,批量删除多个Word...
10. **代理**:用于创建具有额外功能的对象,如AOP(面向切面编程)。 11. **装箱/拆箱**:自动将原始类型转换为对应的包装类,反之亦然。 12. **静态引用**:对类的静态成员的访问。 数据库技术涵盖Oracle和MySQL...
标题与描述概述的知识点主要集中在使用Visual C++(VC)操作Microsoft Word,通过COM接口实现自动化操作,包括创建Word文档、设置字体格式、插入文本以及处理表格等。下面将详细展开这些知识点: ### 1. 添加COM...
- 动态代理的应用场景。 7. **设计模式**: - 单例模式、工厂模式、观察者模式、装饰器模式等常见设计模式的理解与实现。 8. **JVM**: - 类加载机制:加载、验证、准备、解析和初始化。 - 内存模型:堆、栈、...
标题中的“Excel表格+Word文档各类各行业模板-代理店调查书.zip”表明这是一个包含Excel电子表格和Word文档的压缩文件,专门针对代理店调查设计的一系列模板。这些模板可能适用于零售、分销、快消品等多种行业,用于...
首先创建一个新的Word文档,然后在文档中添加目录和各篇文章。`python-docx`提供了丰富的API,可以设置字体、字号、段落样式等,方便我们构建美观的目录和文章内容。 为了实现目录,我们需要记录每篇文章的标题和相...
9. **Word文档生成**:Python的`docx`库可以用来创建和修改Word文档。我们需要创建一个`Document`对象,并向其中添加标题、内容和目录。 10. **docx库**:`python-docx`库提供了对Word文档的低级别操作,包括创建...
Microsoft Word 文档.docx",但实际上,这里的“Word文档”可能是指Word文档中包含了关于VRAY的教程链接或内容概述。VRAY是Autodesk 3ds Max、SketchUp、Rhino等三维建模软件中的一个高质量渲染插件,常用于建筑设计...
《Excel表格+Word文档在公积金管理中的应用》 在当今信息化时代,电子文档处理软件如Excel和Word已经成为了各行各业工作中不可或缺的工具。本资源“Excel表格+Word文档各类各行业模板-世权电算公积金管理软件.zip”...
Java动态代理是Java编程中一个重要的特性,它允许在运行时创建代理对象,这些代理对象可以代表并增强原对象的功能。动态代理主要应用于面向切面编程(AOP)和事件监听等场景,使得代码更加模块化,易于维护。以下是...
本"java认证课程--WORD文档"可能包含了以下关键知识点: 1. **Java基础知识**:涵盖Java语法基础,如数据类型、变量、运算符、流程控制(if-else,switch,循环)、方法定义和调用,以及类和对象的概念。 2. **...
2. **Word文档**:Word是文字处理软件,用于创建、编辑和格式化文档。在机构代表报备表中,Word模板可能用于: - **正式报告**:详述报备的过程、理由和背景信息。 - **协议书**:包含双方机构的协议条款,定义...
这份"Excel表格+Word文档各类各行业模板-代理店关闭报告"提供了专业的模板,可以帮助用户高效地创建代理店关闭报告,以下是这个压缩包内可能包含的知识点: 1. **Excel表格**:Excel是一款强大的电子表格软件,它被...
1. **创建WCF服务**:首先,需要在服务器端创建一个WCF服务,该服务负责处理Word文档相关的请求。 2. **权限配置**:确保WCF服务有足够的权限来读取和写入Word文档。这可能涉及到对服务器的安全设置进行调整。 3. **...
15. Agents 代理:指计算机程序中可以自动执行任务的代理程序。 16. Analog signals 模拟信号:指模拟电子信号,例如音频信号、视频信号等。 17. Applets 程序:指小型的应用程序,通常用于特定任务。 18. ...
了解并能应用常见的设计模式,如单例、工厂、装饰器、代理、观察者、策略等,这些是衡量一个开发者经验与解决问题能力的重要指标。 11. **JVM优化**: 包括堆内存设置、栈内存设置、方法区优化、垃圾回收器的选择...
从提供的文件内容中,我们可以提取出关于网络爬虫开发和文本处理的...此外,文件中还隐含了URL和网页内容抓取的相关知识,以及对爬虫用户代理字符串(User-Agent)的配置,这些都体现了爬虫开发的实用性和技术细节。