Excel精英培训网

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

[VBA] 用VBA整理A1单元格分成两列

[复制链接]
发表于 2016-9-27 16:53 | 显示全部楼层 |阅读模式

用VBA整理A1单元格分成两列



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2016-9-28 14:21 | 显示全部楼层
本帖最后由 香川群子 于 2016-9-28 14:29 编辑

最简单的:

  1. Sub test()
  2.     [b6].CurrentRegion.Offset(1) = "" '清空输出区域
  3.     ar = Split(Join(Filter(Split([a1], ","), "(女)")), "(女)")
  4.     '拆分、按"女"过滤、合并、再拆分(去除"(女)")
  5.     [c6].Resize(UBound(ar)) = WorksheetFunction.Transpose(ar) '转置输出
  6.     [b6] = 1: [b6].Resize(UBound(ar)).DataSeries Rowcol:=xlColumns '填充序号
  7. End Sub
复制代码


呵呵。

评分

参与人数 1 +3 收起 理由
laoau138 + 3 来学习

查看全部评分

回复

使用道具 举报

发表于 2016-9-28 14:27 | 显示全部楼层
标准的:

  1. Sub test()
  2.     [b6].CurrentRegion.Offset(1) = "" '清空输出区域
  3.     ar = Split([a1], ",") '拆分为数组
  4.     For Each a In ar '遍历数组
  5.         If a Like "*(女)" Then i = i + 1: Cells(i + 5, 2) = i: Cells(i + 5, 3) = Replace(a, "(女)", "")
  6.         '检查含"(女)"的则Replace置换去除后输出名字、并加序号。
  7.     Next
  8. End Sub
复制代码


评分

参与人数 2 +6 收起 理由
laoau138 + 3 来学习
苏子龙 + 3 很给力,来学习

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-9-28 16:29 | 显示全部楼层

还可以用instr
回复

使用道具 举报

 楼主| 发表于 2016-9-28 16:31 | 显示全部楼层
回复

使用道具 举报

发表于 2016-9-28 16:45 | 显示全部楼层
a=replace(replace([a1],"(女)",","),",,",",")
b=split(a,",")
for .......
cells()=..
cells()=b(..)
next

评分

参与人数 1 +3 收起 理由
laoau138 + 3 赞一个

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-9-28 16:56 | 显示全部楼层
pengyx 发表于 2016-9-28 16:45
a=replace(replace([a1],"(女)",","),",,",",")
b=split(a,",")
for .......

又来马后炮,从来没有见过你马前炮
回复

使用道具 举报

发表于 2016-9-29 09:25 | 显示全部楼层
laoau138 发表于 2016-9-28 16:56
又来马后炮,从来没有见过你马前炮

这个代码你验证过了吗?

a = Replace(Replace([a1], "(女)", ","), ",,", ",") ……能得到什么东西?

……得到:朱清燕,林鑫,林秋静,林永鑫,林云艳,林嘉惠,
结果是把"(女)"字符给去掉了。然后接下来要怎么处理呢?


回复

使用道具 举报

发表于 2016-9-29 09:26 | 显示全部楼层

还可以用Right……这都算一类吧。

回复

使用道具 举报

发表于 2016-9-29 09:54 | 显示全部楼层
速度比较还是2楼最简代码速度最快。

因为Replace效率其实是很低的。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 19:30 , Processed in 0.295328 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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