VBA,群里求助的例子,如何对字符串进行分列,取出身份证号

1问题:想分离出身份证号

 

2 VBA解决

2.1代码1:

  • 用数组承接
  • 两次数组,分别 split()
Sub test3()
Dim arr1()
Dim arr2()
k = 1
j = 1


a = Range("c65536").End(xlUp).Row


ReDim arr1(1 To a)
For Each m In Range("c1:c" & a)
    arr1(k) = Split(m, Chr(10))(1)
    Debug.Print arr1(k)
    k = k + 1
Next

ReDim arr2(1 To a)
For Each n In arr1
   arr2(j) = Split(n, "|")(0)
   Debug.Print arr2(j)
   j = j + 1
Next

End Sub

 

2.2 代码2

  • 不用中间数组
  • 直接两次split()
  • 放入excel的某列
Sub test4()
k = 1
a = Range("c65536").End(xlUp).Row
For Each m In Range("c1:c" & a)
    Cells(k, 4) = Split(Split(m, Chr(10))(1), "|")(0)
    k = k + 1
Next
End Sub

 

 

3 其他办法

3.1 公式方法

  • =MID(C2,11,30)
  • left(right())
  • find()
  • substitute()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值