首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VBA技巧:让代码识别工作表形状

标签:VBA Q:我在工作表中放置有一些形状,例如圆形、矩形等,我想当我在工作表中使用鼠标单击这些形状时能够根据单击形状有不同操作,该如何实现?...我想在一个过程实现,而不是每个形状关联不同过程。 如下图1所示,当我使用鼠标单击上方圆形时,会执行一个操作;单击下方矩形时,会执行另一个操作,但这两个形状都关联相同过程。...图1 A:在示例工作表,将上方圆形命名为“椭圆示例”,下方矩形命名为“圆角矩形”。...Else MsgBox "没有单击到任何形状." End If End Sub 然后,返回工作表,在形状单击鼠标右键,将其关联到宏过程testShape。...当你单击工作表形状时,结果如下图2所示。 图2 你可以代替过程MsgBox行代码为你想要执行操作代码。

9410
您找到你想要的搜索结果了吗?
是的
没有找到

Word VBA技术:将文档超链接转换为普通文本(取消超链接)

标签:Word VBA 通常,当我们在文档中键入超链接形式文字并按回车键时,Word会自动识别并添加超链接。当然,你可以设置Word选项来阻止自动转换功能。...具体设置方法如下: 单击“文件——选项”,在出现Word选项”窗口中选择左侧“校对”选项卡,在右侧单击“自动更正选项按钮”,在出现“自动更正”窗口中选择“键入时自动套用格式”,取消勾选其中“Internet...图1 然而,对于文档已经存在超链接,则还需要逐个取消。...,那么运行上述代码后,目录中文本超链接会被取消,但页码超链接仍保留。...Word VBA文章,是自己边学习边分享,有用无用看个人,希望大家不要发表一些不好评论,这些评论我不会通过

2.8K20

VBA专题06-2:利用Excel数据自动化构建Word文档—熟悉Word VBA

VBA是一种通用编程语言,适用于任何内置有VBA应用程序,因此Word VBA与Excel VBA语法一样,只是处理对象模型不同。下面,我们通过一些示例语句及其作用描述来熟悉Word VBA。...'当前应用程序文档高度 (3) Application.Width ‘当前应用程序文档宽度 (4) Application.Build ‘获取Word版本号和编译序号 (5)Application.Caption...‘当前应用程序名 (6)Application.DefaultSaveFormat '返回空字符串,表示Word文档 (7)Application.DisplayRecentFiles '返回是否显示最近使用文档状态...(46)ActiveDocument.Shapes.Count '当前文档形状数 (47)ActiveDocument.Styles.Count'当前文档样式数 (48)ActiveDocument.Tables.Count...For lRowNum = 1 To rng.Paragraphs.Count '行号数值转换成文本 strRowNum = str(lRowNum)

2.6K20

VBA技术:你需要知道一些VBA操作形状代码

标签:VBA,Shape对象 本文介绍使用VBA创建和操控形状知识。 在Excel,可以通过功能区“插入”选项卡“插图”组形状”库按钮在工作表插入形状。...可以使用形状来可视化数据、在形状添加文本、作为执行宏代码按钮,等等。 使用AddShape方法创建形状 要使用VBA在Excel创建形状对象,必须调用AddShape方法。...End Sub 确定形状位置 有两个属性可以修改,用以更改工作表形状位置。这两个属性是形状Left和Top值,如下图11所示。...End Sub 确定形状大小 可以使用VBA修改两个属性来更改形状大小。这两个属性是形状Width值和Height值,如下图12所示。...下面的代码示例遍历当前选定工作表所有形状对象,仅更改矩形形状填充颜色

4.3K20

VBA实战技巧03: 精确追踪工作表我们关注形状

有些Excel用户喜欢在工作表绘制形状,以实现其目的。例如,如下图1所示,绘制一个矩形方框来强调这些单元格数据。 ?...如果你想移除工作表添加所有红色矩形框,可以使用下面的代码: Sub RemoveAllShapes() Dim shp As Shape '遍历当前工作表所有形状 '如果不是图表...然而,在有些情形下,工作表可能存在除红色矩形框之外其他形状,而我们并不想删除这些形状。实现这种情形一个技巧是,在添加这些形状时重命名并在其名字后添加指定字符作为标记。...End Sub 这样,就可以很方便地使用VBA代码找到所有的红色矩形框并进行相应操作了。...'检查形状名字后面指定名称标记 If Right(shp.Name, Len(strTag)) =strTag Then '修改颜色为蓝色

89610

Word VBA技术:复制带有自动编号文本并在粘贴时保留编号数字

标签:Word VBAWord文档,复制文本并在某处粘贴是经常要进行操作。...然而,如果文档包含有自动编号文本内容,例如以自动编号数字开头文本,如果要复制内容不包括第一个编号项,那么这种复制粘贴操作可能会导致问题。在这种情况下,原始文档数字和粘贴文本将不匹配。...下面的代码会解决这样问题。它将创建文本副本,其中自动编号数字已被转换为普通文本,以便在粘贴时保留数字。...." & vbCr & _ "本程序将自动编号数字修改为正常文本,以便在其他位置粘贴时保持正确数字编号." & vbCr & vbCr & _ "运行程序前,必须选择想要在其他位置插入文本...接着,在要粘贴文本位置进行粘贴操作。这样,原始文本内容(包括自动编号)保持不变。

2.1K10

Power BI文本大写小写自动更改现象

在处理一些英文姓名时,经常会发现,excel表大小写和Power BI不一样,这篇文章简单说明一下: 如上图所示,在pq处理数据时大小写是与excel完全一致,但是加载到报表中就会发现已经发生了变化...它看到第一个名称是第 1 行,ID 1:"San Zhang"。它将该值存储在一个列表,用于跟踪 Name 唯一值。...然后,它将 ID 和对"San Zhang"引用存储在 Names 列表,并继续执行第 2 行。 对于第 2 行,它会看到另一个名字:"Sure Liu"。...它将它与已经存储在名称列表内容("San Zhang")进行比较,忽略大小写,并发现它不一样。...在Power BI引擎处理过程,AaBaCcDd和aaBbCcDd完全是一回事,根本解决不了问题。 那么问题来了: 如果我们想让a和A分别按照原先大小写进行显示,该如何做呢?

4K20

Word VBA应用技术:列出文档所有书签

标签:Word VBA 如果文档设置了许多书签,如何清楚地看到它们并快速导航?一个好方法是创建菜单实现,其中在菜单上为每个书签创建一个项目,这样在选取该项目时快速转到该书签。...'然后使隐藏书签不可见 '(不希望交叉引用等出现在菜单) ShowHiddenStatus = ActiveDocument.Bookmarks.ShowHiddenActiveDocument.Bookmarks.ShowHidden...ActiveDocument.Bookmarks(CommandBars.ActionControl.Caption).Range.Select End If End Sub 运行CreateBookMarkMenu过程后,将在Word...文档功能区“加载项”选项卡中出现一个名为“书签”菜单,如下图1所示。...当然,你可以对上述代码稍作改动,将其功能放置在已有的选项卡或者右键快捷菜单,这取决于你使用习惯。

1.1K50

VBA实用小程序:将Excel内容输入到Word

将Excel数据输入到Word文档并不难,但这会破坏书签,如果你在对Word文档进行了大量修改后发现想要重新从Excel输入数据,那可能会令人沮丧。...因此,下面的这段代码很简单,对其进行设置,只需为Excel文本、区域和图表命名,并按照代码说明在Word书签创建匹配名称。 注意,我不能保证它在所有情况下都能工作。...完整代码: '这里代码使用书签将图表和表复制到Word文档 'Word文档必须打开并处于活动状态,即当前可见Word文档 '要复制一个表,给它一个以tbl开头区域名称 '然后在Word文档插入一个使用该名称书签...'在给它一个名字时,最安全是点击图表前按Ctrl '然后你在Word包含一个具有此名称书签,同样以 tag_ 为前缀 '运行下面的宏应该复制所有内容 '注意这种方法意味着不能多次插入相同图表/...表格 '因为Word出于显而易见原因不允许重复书签名称 Dim WdApp As Object 'Word.Application Dim doc As Object 'Word.Document

2K20

Word VBA技术:统计文档每个字母字符数量

标签:Word VBA 在某些情况下,可能想知道在文档每个字母有多少个,即字母a-Z每个有多少,或者可能想找出特定文本中最常用字母。...本文包括两个VBA宏,计算Word文档每个字母或其他字符数量。 程序1:在对话框显示结果,其中按指定顺序显示每个字符计数。...,而不会统计页眉、页脚、尾注、脚注等字符。...如何修改程序来仅统计所选内容字符 要统计文档中所选内容字符,将代码: strText = UCase(ActiveDocument.Range.Text) 修改为: strText = UCase...使用VBA统计字符总数 代码为: ActiveDocument.Characters.Count 注:本文学习整理自thedoctools.com,供学习参考。

2.1K10

Word VBA技术:对文档所有表格应用统一边框

标签:Word VBA 如果你文档或者他人传给你文档中有很多表格,但这些表格有不同样式边框,而你现在想将这些表格边框设置为统一样式,怎么办?...当然,你可以逐个表格逐个表格地设置,但是如果文档表格很多,这样操作既繁琐又浪费时间。这种情形下,VBA就派上用场了。...下面的代码为当前文档所有表格设置统一边框样式: Sub AllTablesSetUniformBorders() Dim strTitle As String Dim strMsg As String...,线宽和颜色 objBorderStyle = wdLineStyleSingle objBorderWidth = wdLineWidth075pt objBorderColor = wdColorBlack...,vbInformation, strTitle Exit Sub End If '使用要更改边框定义数组 '这里不包括对角线边框 objArray = Array(wdBorderTop

1.3K30

Word VBA实战应用:给文本添加屏幕提示

标签:Word VBA 本文提供Word VBA程序可以在Word制作类似网站屏幕提示,即将鼠标悬停在特定文本上时显示包含相关信息小框。...如果这样的话,你必须依次执行选择文本、添加书签、创建超链接、选择书签、输入屏幕提示文本等操作。 下面是一组自动执行这些操作VBA程序。...'你可以修改为你喜欢颜色 objColor = wdColorViolet '下面指定字符串用于指定屏幕提示文本换行符....'如果指定字符会包含在屏幕提示文本, '那么将该字符更改为屏幕提示文本不使用字符....而正常超链接样式将自动从超链接删除,以便用户可以将屏幕提示超链接与普通超链接区分开来。如果需要,可以更改程序背景色颜色

1.7K20

VBA专题06-3:利用Excel数据自动化构建Word文档—从Excel访问Word文档

要从Excel访问Word文档,需要建立对Word连接。建立连接有两种方法:后期绑定和前期绑定。...在VBE,单击菜单“工具—引用”,在“引用”对话框中找到所需类型库并选中其前面的复选框,如下图6所示,创建对“MicrosoftWord 16.0 Object Library”引用。 ?...打开Word文档并粘贴Excel工作表数据 下面的程序复制Excel工作表数据并添加到指定Word文档末尾。....Quit End With '释放对象变量 Set wrdApp = Nothing End Sub 在已经打开Word文档粘贴Excel数据 下面的代码复制工作表数据并粘贴到当前...创建新Word文档并粘贴Excel数据 下面的代码将创建一个新Word文档将添加从Excel复制数据: Sub CopyDataToWord() Dim wrdApp As Word.Application

3K20

Word VBA技术:删除表格内容相同重复行(加强版)

标签:Word VBA 在《Word VBA技术:删除表格内容相同重复行》,我们演示了如何使用代码删除已排序表第1列内容相同行。...然而,如果表格第1列没有排序,那么如何删除这列内容相同行呢? 对上篇文章中介绍代码稍作调整,就可以实现删除列相同内容任务。...Long Dim strLastRowCell As String Dim strCell As String Dim strCellPrevious As String '指定想要操作表格...End If Next j Next i '打开屏幕更新 Application.ScreenUpdating = True End Sub 代码从表格最后一行开始,依次遍历表格所有行并对第一列内容进行比较...,删除具有相同内容行。

2.5K20

VBA专题06-1:利用Excel数据自动化构建Word文档—了解Word对象模型

本专题先讲解了Word对象模型中常用对象,让大家先熟悉VBA是如何操控Word文档,有了一定Word VBA基础知识后,再通过详细示例演示Excel与Word交互技术。...了解Word对象模型 与Excel一样,我们使用VBA来调用Word对象模型对象及其属性、方法和事件,从而实现对Word控制。...Templates对象 代表Word文档模板。 下图2展示了Word文档一些常用对象。 ? 图2:文档文本对应常用对象示例 以上图2所选择段落为例,使用VBA代码来对其进行分析。...图3:上图1所选文本中段落和句子分析结果 可以看出,Word VBA是以“。”或“.”为分隔符来拆分出句子。...图4:上图1所选文本中词和字符分析结果 可以看出,Word VBA将符号作为一个词。

2.8K40
领券