vba单元格批量赋值_Excel●VBA●如何把批注中的信息批量提取到单元格?
在Excel中,批注(Comment)是一类特殊的数据。
利用批注,我们可以为单元格添加备注信息(如解释、说明),方便表格阅读者了解数据背后的信息。
然而,由于不当的使用习惯,我们也经常碰到一些表格,制表人将极其复杂的备注信息写入到批注而非单元格中,导致后期想提取批注时非常麻烦。
如上图,A列“系统单号”中每个单元格都带有批注,所批注信息为系统单号对应的所有柜号(文本,按行排列)。
实际上A、B列有很多行数据,本案例使用4行仅作演示之用。
现在需求是——如何快速将A列所有批注信息(即柜号)提取出来,并且写入独立的单元格,完成右侧样式表格。
怎么办?这是一个相当棘手的问题!
如果手工处理的话,那就要一个一个单元格复制批注内容、粘贴后再分列、转置……,工作量极大,我保证你处理完之后手抽筋!
那应该怎么处理呢?下面教你用VBA完成一键处理。
第1步:准备工作假设,我们要将目标数据提取至E、F、G3列,提前做好表头:
第2步:编写代码
ALT+F11,打开VBE,在工作表对应模块中编写代码如下:Sub 提取批注内容()Dim arr() As String '定义一个动态数据,字符型For i = 3 To 6arr = Split(Cells(i, 1).Comment.Text, vbLf)For j = LBound(arr()) To UBound(arr())If arr(j) <> "" Then[e65536].End(3).Offset(1, 0) = Cells(i, 1)[f65536].End(3).Offset(1, 0) = arr(j)[g65536].End(3).Offset(1, 0) = Cells(i, 2)End IfNextNextEnd Sub
将光标置于代码任何位置,按F5运行程序。几秒钟后,就可以在Excel中看到执行结果了:
本例中,利用Split方法,对批注文本(Comment.Text)进行拆分,而拆分所依据的符号是回车符(Vblf)。
这样,将拆分后的结果储存到动态数组arr()中,最后再将数组元素赋值给目标单元格即可。
关键知识点:
1、定义动态数据arr()
2、split方法,利用回车符(vblf)进行拆分
3、由于原批注末尾有多个空行,所以拆分后要加上IF判断,不为空才执行
4、split拆分后的结果是一个数组,最后将数组内容依次写入单元格
5、OFFSE方法,对单元格进行偏移
vba单元格批量赋值_Excel●VBA●如何把批注中的信息批量提取到单元格?相关推荐
- vba单元格批量赋值,EXCEL——VBA对文件夹下所有表格的特定单元格赋值
image 不知道大家有没有遇到过这种情况,一个文件夹下有很多Excel文件,每个文件里面一个或多个表都有一个同样的单元格,比如自己的名字啊.生日啊之类的.这个时候如果要改动这个单元格的内容我们需要一 ...
- easypoi导出word表格_拒绝加班,批量将word文档中的信息高效率提取出来存储到Excel中...
最近,有小伙伴跟我提了一个需求,小伙伴是做扶贫工作的,从扶贫系统里面可以批量的导出每一户的信息到一个word文档中,导出的内容是在word中是以表格的形式存在的.小伙伴的需求是如何批量的将每个word ...
- vba数组如何精确筛选_Excel VBA 数组知识点,数组能不能用好,就看这个你学会没有...
今天和大家要说的是VBA数组的应用,上篇文章我们说的是数组的基础知识点,有不明白的小伙伴可以点击链接进行知识点回顾Excel VBA 数组基础知识,初学者不可不学的关键知识,今天主要说说数组的几个操作 ...
- vba复制整个sheet内容_Excel VBA解读(74):移动或复制工作表——Move方法和Copy方法...
有时候,我们可能想复制工作表,保留一份工作表的副本,以免误操作打乱工作表后无法恢复.有时候,我们也可能想移动工作表,调整工作表顺序,将工作表重新排列,以方便工作表的布置.本文介绍在VBA中实现这两种操 ...
- 只提取单元格中的数字_提取Excel单元格中的数字(4类)及原理
文中总结了4类从包含有中文.字母.数字的单元格数据中只提取数字的公式.(使用的时候把单元格名称改为实际的单元格名称即可). 1.提取文本左侧数据 当单元格中数字在左侧,文字内容在右侧时,我们可以使用一 ...
- 单元格自适应宽度_最详细的Excel模块Openpyxl教程(二)-单元格操作详解
在以前的推文中,我们介绍了操作Excel的模块openpyxl的入门知识,相关推文可以从本公众号的底部相关菜单获取.接下来的推文我们来学习一下openpyxl这个python模块中的其他知识,本次推文 ...
- 十九、PHP框架Laravel学习笔记——批量赋值和软删除
一.批量赋值 上一节增删改中,新增中我们发现需要进行批量赋值的许可: 一般情况下,是为了防止提交过来的字段在部分场景中不需要或不能: 所以,我们需要通过黑白名单机制进行过滤掉必要的字段: //通过提交 ...
- cxgrid 行合并单元格_【Excel VBA】如何批量撤销合并单元格?
周末好,之前我们分享了批量合并单元格的VBA小代码,链接参考: [Excel VBA]如何批量合并相同值单元格? 天下大势合久必分.分久必合.分分合合合合分分又合合合再分分分又又合合合合合合合---- ...
- excelvba怎么设置不打开文件自动保存_Excel VBA之工作薄 5.5批量工作薄标准数据的汇总...
前景提要 通过之前的学习,我们现在已经学会了如何批量打开工作薄,判断工作薄是否打开等操作,批量汇总工作薄的基本操作基本上都已经学了一遍了,相信聪明的你已经能够明白这些操作的方法了,那么今天我们就开始进 ...
最新文章
- php fileputcontents,在php中file_put_contents函数起什么作用呢?
- python画图代码星星-Python利用for循环打印星号三角形的案例
- Zuul网关原理及源码解读(草稿版)
- Python教程:Python基础知识点梳理!
- Qt Creator管理会议
- bzoj2058: [Usaco2010 Nov]Cow Photographs(逆序对)
- Java笔记-基于Spring Boot的SOAP双向SSL认证及WS-Security
- python的爬虫功能如何实现
- Python的可变长度参数*和**,传参序列解包,isinstance的使用
- CentOS下MySQL安装后配置和设置
- java共享内存_Java共享内存
- node.js 实现文件上传
- android recovery 3e,【记录】尝试用ODIN去恢复启动界面是Android system recovery 3e的I9100G...
- Android oem 解锁
- error:unable to recogni “*.yaml“ze no matcher for kind “Deployment“ in version “extensions/b1beta1“
- [CTF]Dino安全小组第三次内部赛“remix_欧皇的游戏2.0”Writeup
- rk3399_9.0.1_mid 时区转换
- 90后,为什么我建议你不要老是加班?
- 安全进化的终极猜想— 以“AI之盾”对抗“AI之矛”
- 一文解析交通大数据是如何解决拥堵问题的