vba word如何获取文本框的文字?
展开全部 新建一个窗体,添加一个文本框控件,用VB写如下程序: Sub Example()Dim myObject As Object'对于浮动式文本框控件Set myObject = ActiveDocument.Shapes(1).OLEFormat.ObjectMsgBox myObject.Text'对于嵌入式文本框控件Set myObject = ActiveDocument.InlineShapes(1).OLEFormat.ObjectMsgBox myObject.Text'对于word的文本框图形(非控件)Set myObject = ActiveDocument.Shapes(1).TextFrame.TextRangeMsgBox myObject.TextEnd Sub Visual Basic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言,为结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。
是一种可用于微软自家产品开发的语言。
“Visual” 指的是开发图形用户界面 (GUI) 的方法——不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可。
“Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 语言,是一种在计算技术发展历史上应用得最为广泛的语言。
Visual Basic源自于BASIC编程语言。
VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active X控件,用于高效生成类型安全和面向对象的应用程序 。
程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
...
如何利用VBA在 word中,实现这样的功能:选中文字,然后按一个按...
ShowVisualBasicEditor = TrueActiveDocument.Shapes.AddTextEffect(msoTextEffect26, _"【解析】人们研制了许许多多计算机程序设计语言,其中二进制", "宋体", 36#, msoFalse, msoFalse, -190.95 _, 92.8).SelectShowVisualBasicEditor = True
word vba 开发 如何得到 CheckBox 对象 并选中它!!!!!!!!!
Private Sub ListBox1_Click()Dim n%n = Me.ListBox1.ListIndex + 1Me.Controls("checkbox" & n).SetFocusIf Me.Controls("checkbox" & n) = False ThenMe.Controls("checkbox" & n) = TrueElseMe.Controls("checkbox" & n) = FalseEnd IfEnd Sub--------------------Private Sub UserForm_Initialize()Dim i%For i = 1 To 4Me.ListBox1.AddItem Me.Controls("checkbox" & i).CaptionNextEnd Sub----------------------
JS 怎么获取文本框中选中的文字
展开全部 //获取选中的文字function getSelectText(editor) { if (!editor) return; editor.focus(); if (editor.document && editor.document.selection) return editor.document.selection.createRange().text; else if ("selectionStart" in editor) return editor.value.substring(editor.selectionStart, editor.selectionEnd); }//调用方式var text= getSelectText(document.getElementById("txtName"));...
VBA中如何判断选中shape的名称
展开全部 你既然想选中图片,再做Select或Activate 单元格.图片的选中会转移到单元格上的.你可以选中图片 然后找到相应的省的名称的单元格,把该单元格用颜色标示 同样能达到你的目的假设图片的名称是省份名称,工作表sheet1的A列里保存的是省份的名称创建两个宏:宏1:目的是把所有的图片都和宏2绑定Sub 绑定() Dim shap As Shape For Each shap In Sheet1.Shapes shap.OnAction = "s_Click" Next shapEnd Sub宏2: 实现你的要求Sub s_Click() a = Application.Caller Sheet1.Shapes(a).Select Sheet1.Range("A3:A10").Interior.ColorIndex = xlNone Set rng = Sheet1.Range("A3:A10").Find(a) If Not rng Is Nothing Then rng.Interior.ColorIndex = 3End Sub...
怎么vba实现word表格批量转为excel
注:vba偶并不太熟(偶一般是用c#和delphi的),VBA只是稍有了解,以下代码大部分是偶google到的内容拼出来的。
。
。
。
。
如下,使用时先更改test下的docpath和xlspath路径设定,docpath即你的word的目录,此目录包括子目录下的所有doc将被读取,xlspath即输出目录,需要存在在VBA窗口中,先在视图下显示立即窗口以观察进度,程序最后的输出类似这样正在读取[1]:->D:\1\Resume.doc正在生成:->d:\2\Resume正在读取[2]:->D:\1\简历(简).doc正在生成:->d:\2\简历(简)正在读取[3]:->D:\1\计数器说明.doc正在生成:->d:\2\计数器说明共耗时0分41秒Option ExplicitDim docpath As String, xlspath As String'ResultFlag=0 获取路径'ResultFlag=1 获取文件名'ResultFlag=2 获取扩展名Public Function SplitPath(FullPath As String, ResultFlag As Integer) As StringDim SplitPos As Integer, DotPos As IntegerSplitPos = InStrRev(FullPath, "\")DotPos = InStrRev(FullPath, ".")Select Case ResultFlag Case 0 SplitPath = Left(FullPath, SplitPos - 1) Case 1 If DotPos = 0 Then DotPos = Len(FullPath) + 1 SplitPath = Mid(FullPath, SplitPos + 1, DotPos - SplitPos - 1) Case 2 If DotPos = 0 Then DotPos = Len(FullPath) SplitPath = Mid(FullPath, DotPos + 1) Case Else Err.Raise vbObjectError + 1, "SplitPath Function", "Invalid Parameter!"End SelectEnd FunctionPublic Function FileFolderExists(ByVal strFullPath As String) As Boolean On Error GoTo EarlyExit If Not Dir(strFullPath, vbDirectory) = vbNullString Then FileFolderExists = TrueEarlyExit: On Error GoTo 0End FunctionSub Test() '使用双字典,旨在提高速度 Dim MyName, Dic, Did, I, T, F, TT, MyFileName, Doc, Ke Dim count As Integer count = 0 T = Timedocpath = "D:\1\"xlspath = "d:\2\" Set Dic = CreateObject("Scripting.Dictionary") '创建一个字典对象 Set Did = CreateObject("Scripting.Dictionary") Dic.Add (docpath), "" I = 0 Do While I "" If MyName "." And MyName ".." Then If (GetAttr(Ke(I) & MyName) And vbDirectory) = vbDirectory Then '如果是次级目录 Dic.Add (Ke(I) & MyName & "\"), "" '就往字典中添加这个次级目录名作为一个条目 End If End If MyName = Dir '继续遍历寻找 Loop I = I + 1 Loop 'Did.Add ("文件清单"), "" '以查找D盘下所有EXCEL文件为例 For Each Ke In Dic.keys MyFileName = Dir(Ke & "*.doc") Do While MyFileName "" Doc = Ke & MyFileName Did.Add (Doc), "" count = count + 1 Debug.Print "正在读取[" & count & "]:->" & Doc doc2xls (Doc) MyFileName = Dir Loop Next ' For Each Sh In ThisWorkbook.Worksheets ' If Sh.Name = "XLS文件清单" Then ' Sheets("XLS文件清单").Cells.Delete ' F = True ' Exit For ' Else ' F = False ' End If ' Next 'If Not F Then ' Sheets.Add.Name = "XLS文件清单" 'End If 'Sheets("XLS文件清单").[A1].Resize(Did.Count, 1) = WorksheetFunction.Transpose(Did.keys) TT = Time - T Debug.Print "共耗时" & Minute(TT) & "分" & Second(TT) & "秒"End SubSub doc2xls(filename As String)Dim xlApp As Object, xlSheet As Object, outfile As String, c As ObjectSet xlApp = CreateObject("Excel.Application")Set xlSheet = xlApp.Workbooks.Add.Sheets(1)Dim Wapp As Object, Doc As Object, GetDocText As Object 'Word Application 对象、Document 对象Set Wapp = CreateObject("Word.Application") '创建Word Application 对象Set Doc = Wapp.Documents.Open(filename, ReadOnly:=True) '打开文档,返回一个文档对象'xlSheet.Range("A1") = Doc.Content.TextDoc.Application.Selection.WholeStory ''''全选Doc.Application.Selection.Copy ''''''''''复制xlSheet.Range("A1").SelectxlSheet.Pasteoutfile = xlspath + Replace(SplitPath(filename, 1), ".doc", ".xls")Debug.Print "正在生成:->" & outfilexlSheet.Parent.SaveAs outfilexlApp.QuitSet xlSheet = NothingSet xlApp = NothingWapp.QuitSet Doc = NothingSet Wapp = NothingEnd Sub
Excel
经测试,确定可行,方法如下:1、先得添加一个 Form,只要添加一个空的就好了,因为后面所用到的 DataObject 对象,需要Form对象;在VBA编辑器中点菜单:插入 ->; 用户窗体,即可;2、在你的模块中放入如下示例代码:Sub Test()Dim MyData As DataObject, MyStr As StringSet MyData = New DataObjectMyData.GetFromClipboard '获得剪切板内容MyStr = MyData.GetText '赋值给变量MsgBox MyStrEnd Sub注意,运行前 从任何窗口选中一些文字 Copy 一下,再运行这个 Test 宏。
有疑问,请Hi我或给我发BaiDu消息。
GoodLuck!
word文本内的链接功能叫什么?
“如果WPS Office 2005专业版早生几年,很难想像中国的Office市场是否还会是国外产品一家独大。
”一位Office资深用户,在使用过WPS Office 2005专业版后,发出如此感慨! 笔者在安装WPS Office 2005专业版整体试用后,亦欣喜不已。
WPS Office 2005专业版的三个功能软件——WPS文字、WPS表格、WPS演示,与国外通用软件的Word、Excel、PowerPoint一一对应,在功能完备性上,也不输于国外通用软件,并且在互联网应用上,具有突出的特点。
用户一直都很关心的兼容问题,WPS Office 2005专业版也已经取得了超乎想象的飞跃,所以,这次评测,我们焦点首先指向兼容性和互联网应用。
测试产品: WPS Office 2005专业版 产品简介: WPS Office 2005 专业版(下面简称WPS 2005)包括WPS文字、WPS表格、WPS演示三大功能软件,是一款跨平台的办公软件。
它既可以在Windows操作系统上运行,还可以运行在主流的Linux操作系统上。
WPS 2005 本身就是按照跨平台技术研发的产品,笔者比较了Windows平台和Linux平台下同一份文件的效果,结果发现效果完全一致。
最佳推荐功能一:高度兼容成就Office孪生兄弟 一直讲求差异发展的WPS,在2005版本上彻底调整了技术路线,把兼容作为最大的突破重点。
笔者发现,这种“兼容精神”已经大大超越以往的软件界面、文件格式的相同或相通,真正渗透进了软件底层技术,在加密、宏等类“技术型”文件的互通性上得到突破。
不可否认,在盗版的推动下,国外Office的使用习惯,已经成为默认的标准,这是任何其它Office厂商都不可回避、必须面对的事实。
如何让用户以最小的转换代价,给予产品最大的认可和满足,是一直困扰金山的问题。
2002年经过4个月的痛苦抉择,金山最后做出了一个让业界刮目的决定:全部放弃已有14年历史的传统WPS技术,重构代码,打造新一代办公平台! 今天我们终于迎来了涅盘重生的WPS Office 2005专业版,感受它的惊人变化。
该软件由三个模块构成,WPS文字、WPS表格,WPS演示严格对应MS Office的Word、Excel、PowerPoint,无论WPS哪个模块软件,我们看到的都是典型XP风格的操作界面,工具栏和一些功能按钮的设置几乎与MS Office完全一致,如果不是文件左上角的图标提示,用户实在难分彼此。
同MS Office保持一致,实现对用户操作习惯的兼容,用户才能真正做到“零时间”上手,这样大大降低了软件推广使用的难度,同时有效减少培训时间,大大降低软件迁移成本。
做到操作习惯的兼容仅仅是“兼容精神”的表象体现,各类文件可以打开,内容显示无差别,这才是用户关心的核心问题。
的确如此,尤其在这个讲求交流和沟通的时代,岂能容忍因为不兼容问题带来的无法与外界交流的障碍。
所以,如果WPS 2005文件格式不能与MS Office彻底兼容,那WPS 2005用户不就变成孤岛上的鲁宾逊了。
让我们马上来看看WPS 2005在与MS Office文件内容识别上,有怎样的表现。
WPS 2005与国外主流Office的兼容,不是WPS 2005只能打开别的Office文件的那种一般意义的单向兼容,而是突破性的双向兼容!格式的兼容还不止于此,我们注意到,MS Office与WPS 2005相互读取的文件,不论是中文文件,还是英文文件,都可达到一字不差、一行不差的精确效果!笔者认为,达到这种精确兼容程度,金山公司一定是在技术上取得了重大突破。
因为有些国外Office企业曾经认为,一字不差、一行不差的兼容是不可能实现的。
不仅仅是文件格式和操作习惯的兼容,笔者经过试用还意外发现,在知道密码的情况下,WPS Office 可以直接打开加了密的DOC、XLS、PPT文件。
不仅如此,WPS Office 2005还可以直接打开带有宏代码的DOC文档,这解除了MS Office 高级用户在文件传输过程中的后顾之忧。
加解密文件通道的打通和可直接运行VBA宏代码这两个深度兼容性的实现,对于其他Office软件来说,目前还是一个难于突破的技术瓶颈。
WPS表格可以跨Excel文件进行数据引用,若改变了被引用的XLS文件数据,WPS表格文件中的引用数据会同步更新。
这项功能体现了产品兼容的数据一致性和应用跨越性。
WPS演示在动画效果、图形种类以及多母板支持上都体现了高度兼容。
最佳推荐功能二:互联网应用从“小”做起 中国互联网络信息中心发布的报告显示,截至今年6月30日,中国上网用户总数突破1亿,总数达到1.03亿户,办公的电脑化、互联网化已经成为一种现实。
办公软件、互联网的使用已经不是少数人的专利。
所以,能否与互联网有更紧密的结合,已经成为检验办公软件先进性的一项重要标准。
一套办公软件的安装程序只有23M,刚听到这种描述,笔者还不敢相信。
亲自动手安装后才意识到,这个“小”,恰恰会为WPS 2005的互联网应用奠定基础。
我们已经习惯了国外软件动辄四五百兆占用较大硬盘空间、长时安装才能完成的事实,第一次见到WPS 2005,着实有了欣喜,不仅仅是因为该软件安装包仅有23M,而且还因为记者第一次安装时,2分钟就完成了所有操作。
这个产品还有一个显著的特点,即可以采用直接复制安装目录的方...
转载请注明出处51数据库 » vba 获取word选中的文字
我爱灰太狼103944001