Excel答粉丝问:批量将单元格内容转为批注
点赞再看,养成习惯;烈士暮年,壮心不已。
微信搜索【亦心Excel】关注这个不一样的自媒体人。
本文 GitHub https://github.com/hugogoos/Excel 已收录,包含Excel系统学习指南系列文章,以及各种Excel资料。
前几天有粉丝问:请问有没有方法把单元格里内容批量编辑成批注,且每个单元格内容不同,主要是发票编码?
我们知道批量给单元格区域添加相同的批注,可以通过选择性粘贴中的批注选项就可以实现,而且还是在现有批注基础上复制。
因此这位粉丝的问题,是没法直接通过现有功能实现的,但是强大的Excel还是留了解决复杂问题的后路的,那就是VBA。今天小编就来分享如何把不同单元格内容批量转为批注。
下面会用到VBA中Sub子程序,简单来说Sub子程序可以通过宏来执行,其他这里就不详细说明了,等着VBA系列文章再说,这里先解决问题。
1、单元格自身内容变成批注
我们先来做个简单的把单元格自身的内容变成本单元格的批注。
如上图,把C4:C9单元格区域内容就添加成自己的批注。
操作也很简单,首先点击「开发工具」选项卡「代码」命令组下的「Visual Basic」,即会弹出VBA开发窗体,接着在「VBAProject」→「Microsoft Excel 对象」下面选择当前工作表,并右击鼠标选择「插入」下的「模块」。
没有「开发工具」选项卡的可以通过「文件」选项卡下的「选项」调出「Excel选项」对话框,点击「自定义功能区」,主选项卡勾选「开发工具」。
此时「VBAProject」下面会多出一个「模块」,我们把默认的“模块1”重命名为“批注Sub子程序”,并且右边灰色区域也会多出一个空白编辑器。
Sub 添加单元格内容为自身批注()Dim r As Range, rs As RangeSet rs = SelectionFor Each r In rsIf r.Value <> "" ThenIf Not r.Comment Is Nothing Thenr.Comment.Text Text:=r.TextElser.AddComment r.TextEnd IfEnd IfNext r
End Sub
并把上面代码复制到空白编辑器中,然后点击保存,弹出的对话框点击是,然后关闭VBA窗体。
然后选中C4:C9单元格区域,点击「开发工具」选项卡「代码」命令组下的「宏」,然后选择上面代码中的方法名「添加单元格内容为自身批注」,点击执行即可。
我们来看看完整的动画效果:
2、把前一列单元格内容变成后一列批注
把自身内容变成批注,实现是简单了些,但是实际应用场景就比较少了,可能我们更多的是希望把某一列内容变成另一列的批注。
如上图我们希望把B列里的内容,变成C列的批注。
其实有了前面的例子就很简单了,我们只需要修改少许代码即可。修改后的代码如下:
Sub 添加前一列单元格内容为批注()Dim r As Range, rs As RangeSet rs = SelectionFor Each r In rsIf r.Value <> "" ThenIf Not r.Comment Is Nothing Thenr.Comment.Text Text:=r.Offset(0, -1).ValueElser.AddComment r.Offset(0, -1).ValueEnd IfEnd IfNext r
End Sub
其中r.Offset(0, -1).Value表示取同一行前一个单元格的值。
操作过程跟上面方法一样,这里就不详细描述了,直接看动态图:
当然这个方式感觉还是有点瑕疵,就是只能在代码里写死取哪一列的值,那么是否可以直接通过一个变量,输入哪一列就取哪一列呢?那是否可以通过自定义函数的形式实现呢?这两个问题就留给大家自己思考了。
今天的分享到这里就结束了,但是学习的道路才刚刚开始,希望我们可以在学习的道路上不断地前进,坚持不懈。
如果你有感兴趣的功能,可以告诉小编哦,小编会为你写一篇相应的文章。当然是先到先写哈,我会列一个计划表,尽量满足大家的需求,所以如果下一篇不是你要的文章,请不要着急,可能就在下下篇。记得告诉小编你想学习的功能哦。
文章持续更新,可以微信搜索「 亦心Excel 」第一时间阅读,本文 GitHub https://github.com/hugogoos/Excel 已经收录,包含Excel系统学习指南系列文章,欢迎Star。
Excel答粉丝问:批量将单元格内容转为批注相关推荐
- 批量提取excel中包含特定关键字的单元格内容
批量提取excel中包含特定关键字的单元格内容 链接:https://pan.baidu.com/s/1uTnkYXh8jBcaeda-JoQDuQ 提取码:jbkv class get_xls_da ...
- html多个单元格合并单元格内容,excel怎样快速把多个单元格内容合并 合并多个单元格内容的设置方法...
excel是我们常用的办公软件,有时我们需要把多个单元个的内容合并到一个单元格里,那么excel怎样快速把多个单元格内容合并?下面小编带来合并多个单元格内容的设置方法,希望对大家有所帮助. 合并多个单 ...
- excel用函数合并多个单元格内容,且用分隔符隔开
①首先,在打开的excel表格中输入几组数据,需要合并成一个单元格,用逗号分隔. ②在c1单元格中输入合并公式:=A1&","&B1,需要在英文输入法中输入双引号. ...
- excel利用公式取最后一行单元格内容
我们在数据处理中经常会涉及到去数据的前几行.后几行这样的操作.在excel中,取前几个单元格,我们可以直接写"=A1"这样的函数去取数.但是取最后一行的话,则不能写成"= ...
- EXCEL使用技巧-如何将单个单元格内容隐藏
1.隐藏单元格中的内容 选中需要隐藏的单元格或是单元格区域,点击鼠标右键,选择"设置单元格格式",然后在"数字"选项卡,在"分类"框中,点击 ...
- excel批量删除单元格中的部分内容;批量在单元格内容首尾添加字符
添加字符 添加字符采用"&"符号,把两部分内容连接起来 比如我想在原有的数字后面添加10的五次方,又不想一个一个改,就可以用&符号,去完成下图的操作: =-> ...
- 用xlwt和xlrd在不修改Excel单元格格式的情况下修改单元格内容
一.问题的来源以及网上的错误方法 最近遇到了一个问题,给定了一个Excel模板,修改表格里面的内容,但是不能修改Excel表格的格式.用pywin32太慢,用xlrd只能读,用xlwt只能写. 很快, ...
- POI读取excel时,单元格内容转化字符串
最近项目需要使用POI解析excel,但在获取每个单元格时,遇到了把单元格内容转为字符串过程中出现各种问题,整数类型后面带小数点.时间格式变为整数形式等等. 最后通过判断Cell的类型进行分别处理,话 ...
- hssfworkbook 单元格合并后宽度不生效_一起来学习Excel批量合并单元格的操作技巧...
在我们日常工作中,利用Excel制作表格时,合并单元格是一个让人又爱又恨的东西,合并单元格后的数据处理会带来很多麻烦,比如求和.统计等计算工作(可查阅<让我们一起来干掉Excel合并单元格的那些 ...
最新文章
- PyTorch在NLP任务中使用预训练词向量
- 使用多个MQTT调试工具mqtt.fx连接同个服务器地址报错,只能连接一个,修改Client ID即可
- Intent以及IntentFilter详解
- 使用文本挖掘实现站点个性化推荐
- Uedit32安装教程附安装包资源
- java 没有提示信息,ActionErrors没有提示信息
- 配置 --- vscode中react格式化解决方案
- 【后空翻机器人代码】斯坦福后空翻机器人设计、代码全开源,成本降至3000美元,人人皆可DIY|湾区人工智能...
- 函数和结构(C++)
- Android 游戏开发中横竖屏切换问题
- 分享128个商务模板PPT模板,总有一款适合你
- Chrome谷歌浏览器无需插件设置夜间模式,黑色主题
- 运行vs2017安装程序自动退出的解决
- 你理解大话西游片尾那句“他好像一条狗”吗?
- 为什么说暴雪必须“手游化”?
- 2018阿里巴巴秋招java笔试题做题记录
- H3C交换机静态路由与NQA联动
- 白岩松:不平静,就不会幸福
- 本地搭建SIP服务器
- 这些网络故障的处理手段,你都试过了吗