实现分列的两段excel vba 分列代码
发布时间:2023-04-12 00:50:38
excel vba 分列多用于一般常规的分列操作完成不了的情况。
Excel内置的分列,仅用于有规律的数据进行分列。比如下面的截图,这样的数据源,分列就可以考虑使用excel vba 分列完成。
A列数据源,要将汉字和数字分列后的效果如B:D列。
下面是两段excel vba 分列的代码,案例和答案来自论坛版主。
第一段excel vba 分列的代码:
Sub vba分列()
Dim oJs As Object, rng As Range
Set oJs = CreateObject("ScriptControl"): oJs.Language = "JScript"
oJs.eval "function gets(str){return str.replace(/(\d+)/,’ $1 ‘)}"
For Each rng In Range("A2", [A65536].End(3))
rng(1, 2).Resize(1, 3) = Split(oJs.codeobject.gets(rng.Value), " ")
Next
End Sub
第二段excel vba 分列的代码:
Sub vba分列()
Dim arr, i%, brr(), sma As Object
arr = Range("a2:a" & Cells(Rows.Count, 1).End(3).Row)
ReDim brr(1 To UBound(arr), 1 To 3)
With CreateObject("vbscript.regexp")
.Global = True
.Pattern = "([^\d]+)(\d+)(.+)"
For i = 1 To UBound(arr)
Set sma = .Execute(arr(i, 1))(0).submatches
brr(i, 1) = sma(0)
brr(i, 2) = sma(1)
brr(i, 3) = sma(2)
Next
End With
Range("b2", Cells(Rows.Count, Columns.Count)).ClearComments
Range("b2").Resize(UBound(brr), UBound(brr, 2)).NumberFormat = "@"
Range("b2").Resize(UBound(brr), UBound(brr, 2)) = brr
Set sma = Nothing
End Sub
代码使用方法,在excel中,按下ALT+F11,打开VBE编辑器,单击插入——模块,复制上面任意一段代码,按F5键运行即可完成分列。
猜你喜欢
- 很多熟悉Word文档的小伙伴们都知道,我们可以在Word文档中为我们的文档添加一定的封面,也可以在需要的地方插入空白页和分页,比如,很多小伙
- 很多用户们在应用计算机的时分,突然发现自己计算机中的输入法无法举行切换了,辣么这个问题需求奈何办理呢,迅速来看看细致的教程吧~1、点击左下角
- excel怎么设置坐标轴标题对齐和绘区域的大小?excel中有很多大小不一的图片的时候,想要对其是很难的,有可能绘图区大小不同,坐标轴标题位
- Excel最强大的功能就是对数据进行计算和处理。大多数时候我们处理的数据都是以阿拉伯数字来显示的,这样即直观又方便进行数据运算。不过,有的时
- 在Excel中录入数据前都会制作一列序号,但如果这些序号都要自己一个手动的去输入就可能会浪费一段时间了,这个时候就需要自动编需要的功能。下面
- 现在使用win10 20h2的用户越来越多了,每天都有用户升级到20h2版本,其中不少人反应20h2版本更新下载速度太慢或者出现更新不了的情
- 戴尔电脑win10小娜如何永久关闭?很多小伙伴跟小编一样,不喜欢电脑上老是弹出小娜,但是关闭之后不久又会回来,那么接下来一起看看戴尔电脑wi
- iOS16.2正式版发布已一周,毫无疑问新系统能为用户带来很多新功能,还能对系统内部的各种问题进行修复,但新的系统往往也会带来一些小的问题。
- 工作效率怎样才能提高?当然是要找对方法。函数怎么学才有效?当然还是要找对方法最重要。不管你是已经就业还是即将就业,这篇文章都将给你不小的帮助
- 有时候,在使用Word进行文字编辑的时候,突然遇到断电,或者电脑自动关机、死机等故障的时候,导致辛辛苦苦做出来的劳动成果全部泡汤,是很多网友
- Excel的Hour函数返回一个 Variant (Integer),其值为 0 到 23 之间的整数,表示一天之中的某一钟点。  
- 一个excel文件里面,假设有50个隐藏的工作表,大家是否想过如何快速批量一次性删除这50个隐藏的工作表,你的方法是怎样的?带着此问题,我们
- excel &是什么意思呢?特别是在筛选公式中很常见。我们先来看看一个基本用法,A1单元格为空单元格,不输入任何内容,B1单元格输入
- 单元格中的数据包含文本和数字(如),如何使用公式提取出该单元格中的数字?先不看答案,自已动手试一试。公式思路先找到字符串文本中第1个数字出现
- 我们在Excel 2003中如何使用条件格式设置自动提醒功能呢?针对此问题,本文就为大家进行解答,下面就和小编一起来看看Excel 2003
- 1.打开需要添加注释的文档,将鼠标点击需要添加的词汇的后面。比如这里我们想要给“追寻”2字添加注释则将鼠标移到“寻”字后面。
- 在下图所示的工作表中,B2:E12单元格区域是部门综合考评表,G2:H5单元格区域为优良中差等级对应的分数,C3:E3单元格区域为三个考核项
- 写论文投稿时,一般要求在论文首页添加脚注,以便输入作者的详细信息。那怎样操作呢?下面给大家简单的介绍一下操作步骤第一步:把光标定位在要插入尾
- Word联盟给大家推荐十个比较经典的Office常用技巧,希望大家喜欢。Word给大家推荐十个比较经典的Office常用技巧,希望大家喜欢。
- 1.打开Excel表格,选中需要修改数字格式的内容,接着点击工具栏的“设置单元格格式-数字”2.常规的几种数字格式满足不了我们的需求就可以选