Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2722|回复: 1

[已解决]提取单元格数据的VBA代码

[复制链接]
发表于 2017-8-15 18:27 | 显示全部楼层 |阅读模式
本帖最后由 网络人 于 2017-8-15 20:59 编辑

求助提取单元个内所有英文字母到另外一个单元格的VBA代码
最佳答案
2017-8-15 19:57
  1. Sub 提取()
  2.     Dim regEx As Object
  3.     Dim i As Integer
  4.     Set regEx = CreateObject("VBSCRIPT.REGEXP")
  5.     regEx.Pattern = "[^0-9.]"
  6.     regEx.IgnoreCase = True
  7.     regEx.Global = True
  8.     For i = 1 To ActiveSheet.UsedRange.Rows.Count
  9.         Cells(i, 4).Value = regEx.Replace(Cells(i, 2), "")
  10.     Next i
  11.     Set regEx = CreateObject("VBSCRIPT.REGEXP")
  12.     regEx.Pattern = "[^a-zA-Z]"
  13.     regEx.IgnoreCase = True
  14.     regEx.Global = True
  15.     For i = 1 To ActiveSheet.UsedRange.Rows.Count
  16.         Cells(i, 3).Value = regEx.Replace(Cells(i, 2), "")
  17.     Next i
  18.     Set regEx = Nothing
  19. End Sub
复制代码

正则我也是刚刚入门,哈哈

提取.rar

22.54 KB, 下载次数: 19

发表于 2017-8-15 19:57 | 显示全部楼层    本楼为最佳答案   
  1. Sub 提取()
  2.     Dim regEx As Object
  3.     Dim i As Integer
  4.     Set regEx = CreateObject("VBSCRIPT.REGEXP")
  5.     regEx.Pattern = "[^0-9.]"
  6.     regEx.IgnoreCase = True
  7.     regEx.Global = True
  8.     For i = 1 To ActiveSheet.UsedRange.Rows.Count
  9.         Cells(i, 4).Value = regEx.Replace(Cells(i, 2), "")
  10.     Next i
  11.     Set regEx = CreateObject("VBSCRIPT.REGEXP")
  12.     regEx.Pattern = "[^a-zA-Z]"
  13.     regEx.IgnoreCase = True
  14.     regEx.Global = True
  15.     For i = 1 To ActiveSheet.UsedRange.Rows.Count
  16.         Cells(i, 3).Value = regEx.Replace(Cells(i, 2), "")
  17.     Next i
  18.     Set regEx = Nothing
  19. End Sub
复制代码

正则我也是刚刚入门,哈哈
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 00:05 , Processed in 0.290791 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表