VB程序中调用word
Option ExplicitDim ap As Word.Application, s As String, doc As DocumentPrivate Sub Command1_Click()Set ap = CreateObject("word.application")Set doc = ap.Documents.Open("d:\1.doc")s = doc.Content.TextPrint sEnd SubPrivate Sub Form_Unload(Cancel As Integer)doc.Closeap.QuitSet doc = NothingSet ap = NothingEnd Sub
如何用VB调用WORD文档,请高手进,谢谢~!~
知道,不过不能直接读取,因为微软没有公布加密方式,所以要调用WORD来读取,然后获取它先在工程的引用里面加上Microsoft Word 11.0 Object LibraryDim 剪切板文本Dim Word文字处理系统界面 As Word.Application '建立一个word.application对象Dim Word文档 As Word.DocumentDim Word文档文本 As Word.Selection '在word文字处理系统中添加一个文档Set Word文字处理系统界面 = CreateObject("Word.Application") '选择对象Word文字处理系统界面.Visible = False '不显示word.application,即word文字处理系统界面Set Word文档 = Word文字处理系统界面.Documents.Open(文件路径)Set Word文档文本 = Word文字处理系统界面.SelectionWord文档文本.WholeStoryWord文档文本.Copy剪切板文本 = Clipboard.GetText(vbCFText) '放到text1中Text1.Text = 剪切板文本'Clipboard.SetData TempWord文档.Close '关闭文档Word文字处理系统界面.Application.QuitSet Word文字处理系统界面 = Nothing '清空变量Set Word文档文本 = Nothing'完成操作我通过剪切板来获取文本,因为这样可以保留格式(本人独创)如果直接获取也是可以的,不过格式全部丢失,所以我的方法会更好一点
vb 调用word中关于normal.dat的问题
1)Word为OLE自动化提供一种称为“Basic”的对象,要在VB中控制Word ,首先要定义一个引用Word中“Basic”对象的对象变量:Dim Wordobj as Object (2)将Word 中的“Basic”对象赋给该对象:Set Wordobj=CreateObject("Word.Basic") (3)可以使用大多数WordBasic语句和函数控制Word或Word文档,使用方法和在Word宏中使用WordBasic指令的方法基本相同。
(4)关闭Word:Set Wordobj =Nothing。
注意:“Basic”对象不支持关闭它自己的一个方法。
即若在OLE自动化中关闭了Word,则对象被置为Nothing,便不能再对对象进行操作,程序出错。
word中自带的VBA与独立的VB程序在功能上是否一样?
**** VBA 在90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用EXCEL的宏语言来使EXCEL自动化,使用WORD BASIC使WORD自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言VISUAL BASIC 的子集.实际上VBA是寄生于VB应用程序的版本. * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化.* VBA可以称作EXCEL的“遥控器”.VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案. 此外,如果你愿意,还可以将EXCEL用做开发平台实现应用程序.Office取得巨大成功的一个重要原因就是VBA,使用VBA可以完成很多事情,基于Excel、Word的VBA小程序不计其数。
VBA程序员很多是业余程序员,正因为业余,解决的却是工作中需要解决的问题;所以,VBA程序大多都是只是在部门内部或个人使用的小工具。
****VB 与VBAVBA 是基于Visual Basic 发展而来的,它们具有相似的语言结构。
Visual Basic 是Microsoft 的主要图形界面开发工具,VBA 5.0 (亦即VBA 97)则是Visual Basic5.0 的子集。
Visual Basic 是由Basic 发展而来的第四代语言。
Visual Basic 作为一套独立的Windows 系统开发工具,可用于开发Windows 环境下的各类应用程序,是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言。
它具有高效率、简单易学及功能强大的特点。
VB 的程序语言简单、便捷,利用其事件驱动的编程机制,新颖易用的可视化设计工具,并使用Windows 应用程序接口(API)函数,采用动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)以及开放式数据库访问(ODBC)等技术,可以高效、快速地编制出 Windows 环境下功能强大、图形界面丰富的应用软件系统。
VBA 不但继承了VB 的开发机制,而且VBA 还具有与VB 相似的语言结构,它们的集成开发环境IDE(Intergrated Development Environment)也几乎相同。
但是,经过优化,VBA 专门用于Office 的各应用程序。
VB 可运行直接来自Windows 95 或NT 桌面上的应用程序,而VBA 的项目(Project)仅由使用VBA 的Excel、Word、PowerPoint 等称为宿主(Host)的Office 应用程序(Application)来调用。
简而言之:VBA是VB在二次开发OFFICE系列软件的应用,它是VB的简化版,但它不能独立运行,必须依附OFFICE软件。
VB的一些功能在VBA中无法使用,但多数函数和方法是通用的。
vba是什么
VBA是什么 直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用EXCEL的宏语言来使EXCEL自动化,使用WORD BASIC使WORD自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言VISUAL BASIC 的子集.实际上VBA是寄生于VB应用程序的版本.VBA和VB的区别包括如下几个方面: 1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化 2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序. 3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的父应用程序,例如EXCEL. 尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在EXCEL中用VBA创建解决方案后,即已具备在WORD ACCESS OUTLOOK FOXPRO PROWERPOINT 中用VBA创建解决方案的大部分知识. * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化. * VBA可以称作EXCEL的“遥控器”. VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案. 此外,如果你愿意,还可以将EXCEL用做开发平台实现应用程序. Office取得巨大成功的一个重要原因就是VBA,使用VBA可以完成很多事情,基于Excel、Word的VBA小程序不计其数。
VBA程序员很多是业余程序员,正因为业余,解决的却是工作中需要解决的问题;所以,VBA程序大多都是只是在部门内部或个人使用的小工具。
集成了VBA的其他应用程序也很多,但真正能为程序增色的不多。
大多数人看到了VBA可以自动化一个程序,可以扩展已有程序,但没有看到在Office中,VBA代码可以是录制的,而不是写出来的,带来的好处是,学习曲线变得非常缓。
如果没有宏录制功能,要熟悉某个Office组件的对象模型,绝非一日之功。
以ArcGIS为例,ArcGIS扩展必须使用ArcObject,不管是使用VBA也罢,VB也罢,还是C++也罢。
但同时,ArcObject的学习不是一天两天可以搞定,对于业余程序员,要使用VBA来扩展ArcGIS,几乎没有可能;专业程序员又不屑使用VBA;而对于公司,如果要基于ArcObject来扩展ArcGIS,选择VBA意味着源码的保护很困难。
所以,ArcGIS的VBA就如同鸡肋。
不过,学习AO的时候,使用VBA比使用其他语言要容易一些,写几行代码,然后直接运行测试结果,这种交互式的学习应该是最好的学习方法。
ArcGIS以及AO与Office相比,还有一个很大的差别,就是ArcGIS缺乏中等粒度的对象,例如Word和Excel的Range对象。
对于Office开发,可以在对底层小粒度对象一无所知的状况下做很多事情,这就是抽象的力量。
常人可以处理的复杂度是有限的,面对数十个对象和几百个对象,后者需要付出的努力不是10倍,而是数十倍或更多,因为在学习过程中,必须可以把这些对象在大脑中很好的组织,以控制其复杂度。
Visual Basic for Applications(简称VBA)是新一代标准宏语言,是基于Visual Basic for Windows 发展而来的。
它与传统的宏语言不同,传统的宏语言不具有高级语言的特征,没有面向对象的程序设计概念和方法。
而VBA 提供了面向对象的程序设计方法,提供了相当完整的程序设计语言。
VBA 易于学习掌握,可以使用宏记录器记录用户的各种操作并将其转换为VBA 程序代码。
这样用户可以容易地将日常工作转换为VBA 程序代码,使工作自动化。
因此,对于在工作中需要经常使用Office 套装软件的用户,学用VBA 有助于使工作自动化,提高工作效率。
另外,由于VBA 可以直接应用Office 套装软件的各项强大功能,所以对于程序设计人员的程序设计和开发更加方便快捷。
编辑本段VBA 基础 Visual Basic 的应用程序版(VBA)是Microsoft 公司长期追求的目标,使可编程应用软件得到完美的实现,它作为一种通用的宏语言可被所有的Microsoft 可编程应用软件所共享。
在没有VBA 以前,一些应用软件如Excel、Word、Access、Project 等都采用自己的宏语言供用户开发使用,但每种宏语言都是独立的,需要用户专门去学习,它们之间互不兼容,使得应用软件之间不能在程序上互联。
拥有一种可跨越多个应用软件,使各应用软件产品具有高效、灵活且一致性的开发工具是至关重要的。
VBA 作为一种新一代的标准宏语言,具有上述跨越多种应用软件并且具有控制应用软件对象的能力,使得程序设计人员仅需学习一种统一的标准宏语言,就可以转换到特定的应用软件上去,程序设计人员在编程和调试代码时所看到的是相同的用户界面,而且VBA 与原应用软件的宏语言相兼容,以保障用户在代码和工作上的投资。
有了VBA 以后,多种应用程序共用一种宏语言,节省了程序人员的学习时间,提高了不同应用软件间的相...
用VB调用Autocad中的VBA,能不能像VB自己的函数一样有编写提示...
一、 可以的,设置方法为先把AutoCad的对象模型搞懂 在Cad的帮助里有相关的内容 先打开Cad,然后运行下面的代码 Dim acadapp As Object Dim acaddoc As Object Dim mspace As Object Set acadapp = GetObject(, "autocad.application") Set acaddoc = acadapp.activedocument Set mspace = acaddoc.modelspace Dim pnt(2) As Double Dim r As Double r = 10 mspace.addcircle pnt, r二、CAD的实用小技巧:1、画直线的时候,经常会遇到过长过短的情况。
此时可单击这条直线,这条直线便出现三个蓝色的小夹点。
把鼠标移到两端的任意夹点上,点击并拖动夹点可对这直线进行拉长,或缩短。
2、当已执行完任意一命令时,如果下一步想重复上一步的命令时,可按右键或Enter键确认,此时CAD会默认刚才操作的命令。
比如画完了一个矩形,下一步还是画矩形,直接按右键确认就可以画矩形了。
3、当所画的图无法进一步缩小或放大时,可输入快捷键RE,重新生成一下就可以了。
4、熟记工作中常用的快捷命令,可以给我们的工作带来很大的方便。
如画直线L,画圆C等,这些需要我们在平时的工作中多注意积累,并熟记和运用。
5、在CAD设计中如果图中多次出现某一规格的型材,可以事先把这个型材做成块。
要用的时候直接把块调出来,这样可以给设计者节省了大量时间。
6、在CAD的下方找到对象捕捉,按右键选择设置。
弹出草图设置对话筐,如要捕捉中点,切点可以相应的打上勾。
画图时就会自动捕捉相应的点。
转载请注明出处51数据库 » 如何在vb程序中调用word vba
A户外军用品A