Excel精英培训网

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

[已解决]vba 提取数字

[复制链接]
发表于 2016-6-13 15:45 | 显示全部楼层 |阅读模式
将以“,”分割的单元格内数字用VBA提取出来,具体要求详见附件。
最佳答案
2016-6-13 15:56
  1. Sub xx()
  2.     Dim arr, n&
  3.     With Sheet1
  4.         n = .Cells(.Rows.Count, 1).End(xlUp).Row
  5.         For i = 1 To n
  6.             arr = Split(.Cells(i, 1), ",")
  7.             .Cells(i, 2).Resize(1, UBound(arr) + 1) = arr
  8.         Next
  9.     End With
  10. End Sub
复制代码

提取单元格内数字.zip

6.01 KB, 下载次数: 15

发表于 2016-6-13 15:53 | 显示全部楼层
=TRIM(MID(SUBSTITUTE($A1,",",REPT(" ",99)),COLUMN(A1)*99-98,99))
函數解。
回复

使用道具 举报

发表于 2016-6-13 15:55 | 显示全部楼层
Sub Click()
    Application.DisplayAlerts = False
    [a1:a2].TextToColumns Destination:=[b1], Comma:=True
End Sub

点评

這麼簡短。不明覺厲。  发表于 2016-6-13 16:03

评分

参与人数 1 +20 金币 +20 收起 理由
心正意诚身修 + 20 + 20 很给力

查看全部评分

回复

使用道具 举报

发表于 2016-6-13 15:56 | 显示全部楼层    本楼为最佳答案   
  1. Sub xx()
  2.     Dim arr, n&
  3.     With Sheet1
  4.         n = .Cells(.Rows.Count, 1).End(xlUp).Row
  5.         For i = 1 To n
  6.             arr = Split(.Cells(i, 1), ",")
  7.             .Cells(i, 2).Resize(1, UBound(arr) + 1) = arr
  8.         Next
  9.     End With
  10. End Sub
复制代码

评分

参与人数 1 +15 金币 +15 收起 理由
心正意诚身修 + 15 + 15 很给力

查看全部评分

回复

使用道具 举报

发表于 2016-6-13 16:11 | 显示全部楼层
心正意诚身修 发表于 2016-6-13 15:53
=TRIM(MID(SUBSTITUTE($A1,",",REPT(" ",99)),COLUMN(A1)*99-98,99))
函數解。

只是用VBA代码,表达分列操作。

以逗号分隔a1:a2,到b1。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 15:53 , Processed in 0.228339 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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