饱和蒸汽的比热容:利用VBA宏代码把Excel单元格中汉字、数字或字母混合数据中的汉字提取出来
来源:百度文库 编辑:偶看新闻 时间:2024/04/25 20:16:16
利用VBA宏代码把Excel单元格中汉字、数字或字母混合数据中的汉字提取出来
Excel工作表中的"数据"菜单下有"分列"命令,便于对有规律的数据序列进行分列,但是对于一些没有规律的数据序列则无法进行有效的分割,此时可以考虑利用Excel中的VBA代码来实现。
在如下图所示的工作表中,A列保存有汉字、数字及字母混合在一起的数据,因为汉字的个数是随机的,无法使用Excel中分列命令进行分列,现在要求将A列中数据的汉字部分提取出来放置到B列中,数字及字母部分分离出来放置到C列中,如何操作呢?
第1步 单击"工具→宏→宏"菜单命令,打开"宏"对话框。
第2步 在"宏名"文本框中输入宏的名称"数据分列"。
第3步 单击"创建"按钮,在打开的"Visual Basic编辑器"对话框中输入所示的代码。
Sub 数据分列()
Dim m%,i%,strn$,rn as range,rng as range
Application.screenupdating=false
M=[a65536].end(xlup).row
Set rng=range(“a1:a” & m)
Columns(“b:c”).clearcontents
For each rn in rng
For I=1 to len(rn)
Strn=mid(rn,I,1)
If isnumeric(strn) then
Rn.offset(0,1)=mid(rn,1,i-1)
Rn.offset(0,2)=mid(rn,i)
Exit for
End if
Next i
Next rn
Application.screenupdating=true
End sub
第4步 关闭"Visual Basic编辑器"对话框,在"宏"对话框中单击"执行"按钮。
第5步 执行后的结果如下图所示,即可达到我们需要的结果,轻松方便!
提示:
1、代码经多次测试,结果完全正确,此处只提供代码,对代码不做分析,有兴趣的读者可以自己研究!
2、本宏代码只对汉字+数字+字母格式才能正确把汉字与其它分割开来,如果数字在最后面,只能把前面与后面的数字分割开来,当然有兴趣的朋友可以自己更改代码实现它。