Excel答粉丝问:批量将单元格内容转为批注

article/2025/7/18 15:37:03

点赞再看,养成习惯;烈士暮年,壮心不已
微信搜索【亦心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。


http://chatgpt.dhexx.cn/article/3WLkB099.shtml

相关文章

更改Excel单元格中批注的显示位置

当在Excel中插入一个批注时&#xff0c;你可以把它调整到不同的位置(如 单元格的左边等等)。但是有一个问题&#xff0c;当把批注的显示方式更改为 只显示标示符 后。你移到鼠标到单元格上时批注还是恢复初始的位置-即显示单元格的右方。下面这个小程序就可以 解决这个问题。 O…

Excel中怎么添加批注

大家在做表格的时候&#xff0c;经常会遇到需要添加批注的情况&#xff0c;那么怎样添加、修改和删除批注呢&#xff1f;今天就用常用的speedoffice和大家分享一下。 1&#xff0c;首先运行office软件&#xff0c;新建一份表格&#xff0c;选中需要添加批注的单元格。 2&#…

把Excel批注的“红三角”放在单元格左上角_excel批注的玩法,看看你会几个

说道Excel批注,有许多用处和插入方法,今天带大家来看看! 1、插入批注 方法一:在【审阅】选项卡下【批注】组中点【新建批注】方法二:点鼠标右键,选择【插入批注】方法三:按键,快速插入批注2、删除批注 方法一:选中带批注单元格,在【审阅】选项卡下【批注】组中点【删…

C# 在Excel文档中显示或隐藏批注

在Excel文档中插入批注默认情况是不会显示的&#xff0c;如果插入的批注多了&#xff0c;想一次性快速查看所有批注就会比较麻烦。此时我们可以选中插入批注的单元格&#xff0c;然后单击菜单栏“审阅”选项卡“批注”功能区中的“显示或隐藏批注”选项来更改批注的显示状态。本…

Excel一键将批注内容显示,替换单元格内容

如下图所示&#xff0c;菜的价格为批注内容&#xff0c;想把菜价统一替换了当前单元格的内容&#xff0c;如何操作呢&#xff1f; &#xff08;方方格子插件&#xff09; 1.先看动图演示 2.选中数据区域 3.选择diy工具箱 4.选择批注中的导出批注 5.选择导出到批注所在单元格 …

excel批注不显示批注框_批注和批注处理器入门指南[解释]

excel批注不显示批注框 在Java中&#xff0c;大多数情况下&#xff0c;批注和批注处理器都被一团谜团包围。 他们看起来像是为“专家”保留的主题。 最重要的是&#xff0c;我相信他们周围也有一些FUD。 这篇文章旨在以最中立的方式深入探讨该主题。 这样&#xff0c;每个人都…

Error LNK2005 DllMain already defined in dllmain.obj

问题描述&#xff1a; 在创建Win32动态库时&#xff0c;使用了MFC库。 原因分析&#xff1a; MFC库中存在DllMain&#xff0c;与现有的DllMain重复 解决方案&#xff1a; 1.删除现有的DllMain函数 2.在工程设置里面&#xff0c;把WIN32,NDEBUG,_WINDOWS,_MBCS,_USRDLL,MS…

C++-导出类-导出宏-纯虚函数-DllMain函数-调用约定与参数命名

文章目录 1.普通类导出2.接口类导出3.调用约定与参数命名4.名字修饰约定5.MFC导出宏6.DLLMain函数7.一个DLL在内存中只有一个实例 在编写应用软件时&#xff0c;代码重用是非常关键的一步&#xff0c;C编程语言里&#xff0c;为了使编写的dll文件&#xff0c;能够实现重用&…

9.DLL的入口函数DllMain函数

1.dll的入口函数 类似程序的入口函数main或者WinMain一样&#xff0c;DLL也有一个入口函数&#xff0c;就是DllMain 2.DllMain函数原型 BOOL APIENTRY DllMain( HMODULE hModule, //指向自身的句柄DWORD ul_reason_for_call, //调用原因LPVOID lpReserved …

导致DllMain中死锁的关键隐藏因子

原文地址&#xff1a;https://blog.csdn.net/hczhiyue/article/details/18505087 有了前面两节的基础&#xff0c;我们现在切入正题&#xff1a;研究下DllMain为什么会因为不当操作导致死锁的问题。首先我们看一段比较经典的“DllMain中死锁”代码。 //主线程中 HMODULE h …

DllMain详解

DllMain详解 源码下载&#xff1a; DLL – 动态链接库 DllMainTest – 测试DLL的DllMain 1 DLL的进入/退出函数 1.1 DllMain简介 跟exe有个main或者WinMain入口函数一样&#xff0c;DLL也有一个入口函数&#xff0c;就是DllMain。以“DllMain”为关键字&#xff0c;来看看MSD…

Flash 加密和破解

关于Flash&#xff08;swf&#xff09;&#xff0c;我们需要明确一点&#xff1a; ***Flash字节码的意义都是公开的 所以如果cracker真的有足够的耐心他最终还是可以破解掉你的Flash。我们能做的只是尽量提高Flash被破解的门槛让cracker破解它需要消耗的时间大于自己更新版本的…

flashfxp是ftp软件吗,你知道flashfxp是ftp软件吗

flashfxp是ftp软件吗&#xff1f;当然。ftp是一种文件传输协议&#xff0c;用于互联网双向传输&#xff0c;控制文件下载空间在服务器复制文件从本地计算机或本地上传文件复制到服务器上。而FlashFXP是一款功能强大的FXP/FTP软件&#xff0c;集成了其它优秀的FTP软件的优点&…

pfx证书解析公钥私钥

从pfx中获取CA证书 openssl pkcs12 -in test.pfx -nodes -out server.pem 输入证书密码 提取公钥 X.509格式 openssl x509 -in server.pem -out public.cer RSA格式 openssl rsa -in server.pem -outform PEM -pubout -out public.pem 提取私钥 openssl rsa -in server…

提权学习:第三方软件提权(FlashFXP 替换文件漏洞提权)

当你的才华 还撑不起你的野心时 那你就应该静下心来学习 目录 FlashFXP 替换文件漏洞提权 0x01 前言 介绍 用途 特点 0x02 环境配置 0x03 FlashFXP 提权思维导图 0x04 操作演示 FlashFXP 替换文件漏洞提权 0x01 前言 介绍 FlashFXP是一个功能强大的 FXP/FTP 软件&…

用FlashFXP上传文件到SSH服务器,附FlashFXP显示中文乱码的解决方法

用SSH Secure Shell能上传文件&#xff0c;又能输入命令&#xff0c;而且上传文件的时候不容易无故断开连接。但是它缺少续传的功能&#xff0c;不太适合上传比较大的文件&#xff1b;而且它在与linux系统SSH登陆时不方便支持中文&#xff0c;所以这里我向大家推荐FlashFXP来实…

flashfxp链接Linux

使用FLASHFXP链接我们的Linux操作系统&#xff0c;可以方便实现文件的上传下载到Linux中。在我们的Linux能成功链接网络后&#xff0c;利用ifconfig命令设置ip、掩码、网关。 设置ip与掩码&#xff1a;ifconfig eth0 192.168.1.114 netmask 255.255.255.0&#xff0c;设置网关…

FlashFXP使用阿里云ECS私钥登录

前言 最近购买了一个阿里云服务器主机&#xff0c;需要使用到FTP上传文件到服务器&#xff0c;因为我一直习惯使用FlashFXP上传文件&#xff0c;使用的是SFTP,所以没有在额外的安装FTP的服务&#xff0c;但是发现阿里云的ECS在SFTP模式下直接使用密码和用户名登录会报错。下面是…

NET主流ORM框架分析

接上文我们测试了各个ORM框架的性能&#xff0c;大家可以很直观的看到各个ORM框架与原生的ADO.NET在境删改查的性能差异。这里和大家分享下我对ORM框架的理解及一些使用经验。 ORM框架工作原理 所有的ORM框架的工作原理都离不开下面这张图&#xff0c;只是每个框架的实现程度不…

Linux USB总线驱动框架分析

1、USB驱动引入 USB&#xff08;全称 Universal Serial Bus&#xff0c;通用串行总线&#xff09;&#xff0c;已经成为PC及嵌入式设备中最常用、最便捷的通信接口。Linux USB子系统较为庞大&#xff0c;本文主要对Linux系统下的USB总线驱动框架进行概述&#xff0c;重点的细节…