Excel·VBA文本按分隔获取函数
office 365新增函数《TEXTAFTER 函数》和《TEXTBEFORE 函数》可以对单元格文本,获取指定分隔符之前/之后文本
对于没有office 365又想使用这个函数,就只能自己写VBA代码自定义函数了
instance_num参数:正数为从左往右,1为最左;负数则相反,-1为最右
Function text_take(text As String, Optional delimiter As String = ",", Optional mode As String = "a", Optional instance_num As Long = 1)'函数定义text_get(文本,分隔符,模式之后/之前、第几个分隔符)对文本按模式获取指定分隔符之前/之后的文本,返回一个文本'2种模式,"a"即after获取分隔符之后、"b"即before获取分隔符之前Dim arr, result, i&, j&, min_a&, max_a&, start_a&, end_a&If instance_num = 0 Then text_take = "#instance_num必须为非0整数": Exit Functionarr = Split(text, delimiter) '分割函数,返回从0计数的一维数组min_a = LBound(arr): max_a = UBound(arr): j = 0If max_a = 0 Or Abs(instance_num) > max_a Then text_take = "#N/A": Exit FunctionIf LCase(mode) = "a" ThenIf instance_num > 0 Then start_a = instance_num Else start_a = instance_num + max_a + 1ReDim result(0 To max_a - start_a)For i = start_a To max_aresult(j) = arr(i): j = j + 1Nexttext_take = Join(result, delimiter)ElseIf LCase(mode) = "b" ThenIf instance_num > 0 Then end_a = instance_num - 1 Else end_a = instance_num + max_aReDim result(0 To end_a - min_a)For i = min_a To end_aresult(j) = arr(i): j = j + 1Nexttext_take = Join(result, delimiter)End If
End Function
举例
Excel·VBA文本按分隔获取函数相关推荐
- excel vba 文本框_自动调整Excel文本框的大小
excel vba 文本框 If other people will be using the Excel files that you build, it might help them if yo ...
- Excel·VBA单元格区域获取指定行列函数
office 365新增函数<CHOOSEROWS 函数>和<CHOOSECOLS 函数>可以获取单元格区域指定行.列,并返回一个单元格区域 对于没有office 365又想使 ...
- Excel·VBA单元格区域获取/删除连续行列函数
office 365新增函数<TAKE 函数>和<DROP 函数>可以获取/删除单元格区域开头或结尾连续行.列,并返回一个单元格区域 对于没有office 365又想使用这个函 ...
- excel vba 调用webbrowser_VBA 公式与函数
一, 在单元格中输入公式的3种方法: 1) 用VBA在单元格中输入普通公式 Sub formula_1() Range("d2") = ("=B2 * C2") ...
- Excel VBA 学习总结 - 内置函数
了解VBA与Excel内置的函数,能够使我们处理起任务来事半功倍.这些函数不仅使用方便,而且效率一般都比较高(有些是例外的,特别是某些工作表函数),比我们自己写的要高效的多. 1. VBA内置的函数 ...
- Excel VBA 打开对话框,获取文件夹路径
Excel 打开对话框,获取文件夹路径 'Window「参照」ダイアログで選択したItem 名を取得 Public Function GetFolderName(ByVal DialogType As ...
- EXCEL计算文本格式显示的函数公式结果(定义名称evaluate函数+vlookup+address)
表1数据(表名Sheet1): 表2数据(表名Sheet2): 第①步输入: ="VLOOKUP("& CELL("address",A40) & ...
- Excel Vba 单元格内容拼接函数,类似PHONETIC,但是添加分隔符
参数: Code :查询的内容 Zone :查询的区域 ColumnIndex :指定返回列的序号 Splitor :行分隔符 '连接字符串,类似PHONETIC,但是可以添加分隔符 Function ...
- Excel VBA遍历文件
休息日,无聊的上Excel Home看看有啥东东可学习,有啥问题能帮帮忙.看到很多帖子都是求助遍历特定文件夹下文件的实现方法.有朋友说03版Excel有FileSearch对象可以遍历文件夹下文件,0 ...
最新文章
- 大数据处理语言U-SQL介绍
- Java实现二维码QRCode的编码和解码
- ES聚合底层机制-bucket深的话采用广度优先更好,而如果是年度统计还是深度优先好...
- <马哲>生产方式是社会发展的决定力量2017-12-27
- javascript数据结构与算法 --- 高级排序算法
- Shell学习笔记一
- cityengine导出fbx
- boost升压电路工作原理
- 计算机网络期末4小时速成
- 基于STM32设计的数字电子秤
- LayUI复杂表头多一列
- 与孔子同世之闻人少正卯
- 2021年五大电子邮件威胁与零日漏洞
- ubuntu上安装源代码阅读工具Source-Navigator
- linux关于日志文件介绍,Linux下重要日志文件介绍
- 中国大学MOOC C语言程序设计(大连理工大学) 课后编程题 第三周题解(个人向仅供参考)
- Java Study Notes_Design in 2023(Day01~Day14)
- 团购服务升级战打响:围绕移动、差异、精细化
- 【windows】实战部署二(使用)SVNserver服务端+SVNclient客户端
- 坎蒂雷赋权法 matlab,多重网格法求解雷诺方程的MATLAB编程
热门文章
- 天刀服务器的位置2018,2018天刀哪区人多 | 手游网游页游攻略大全
- 【重磅】4 款超好用的在线视频转GIF神器推荐!!
- 华为nova2s用哪个型号服务器,华为nova2s手机套和哪个型号相似 | 手游网游页游攻略大全...
- pip+conda更换国内源(ubuntu18.04+win10)
- RuntimeError: NCCL error in: ../torch/csrc/distributed/c10d/ProcessGroupNCCL.cpp:1123, internal erro
- 防静电手环在计算机中的功能,防静电手环怎么用
- 【Java】计算机软件、博客的重要性、编程语言介绍和发展史
- 高通 android P remount指令
- 加速转型升级,玖富半年报剑指金融科技下半场
- 双击背面截图_苹果iOS14怎么轻点背面截屏?双击截图设置教程