ExcelHome技术论坛

 找回密码
 免费注册
QQ登录 只需一步,快速开始
新浪微博登陆 只需一步, 快速开始
   
高效办公必会的Office99uu优优 永久免费,网表让Excel秒变数据库 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
Excel不给力? 何不试试FoxTable! 国内首部Excel函数公式学习大典 职场充电黑科技, Office微99uu优优 免费下载Excel行业应用视频
300集Office 2010微99uu优优 Tableau-数据可视化工具 突破Excel限制,用活字格提高效率 12门Excel免费公开课任你学
你的Excel 201099uu优优学习锦囊 欲罢不能, 过目难忘的 Office 新界面 免费的Excel考勤计算系统
查看: 217|回复: 13
打印 上一主题 下一主题

[求助] 如何高效的取出单元格内的数据

[复制链接]
TA的精华主题TA的得分主题
跳转到指定楼层
1
发表于 2017-8-12 16:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何高效的取出单元格内的数据?问题见附件
take.zip 598.54 KB, 下载次数: 13
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 有用有用 无用无用 分享到新浪微博
TA的精华主题TA的得分主题
2
发表于 2017-8-12 16:31 | 只看该作者
分列最高效,瞬间完成................................................................................
TA的精华主题TA的得分主题
3
 楼主| 发表于 2017-8-12 16:32 | 只看该作者 |楼主
TA的精华主题TA的得分主题
4
 楼主| 发表于 2017-8-12 16:33 | 只看该作者 |楼主
TA的精华主题TA的得分主题
5
发表于 2017-8-12 16:34 | 只看该作者
  • Sub CSL()
  • Dim arr, br
  •     arr = Range("G1:G600000")
  •     ReDim br(UBound(arr), 2)
  •     For x = 1 To UBound(arr)
  •             br(x - 1, 0) = Mid(arr(x, 1), 1, 1)
  •             br(x - 1, 1) = Mid(arr(x, 1), 3, 100)
  •         Next
  •         [H1].Resize(UBound(br), 2) = br
  •     End Sub
  • 复制代码

    处理60W应该没有问题
    TA的精华主题TA的得分主题
    6
     楼主| 发表于 2017-8-12 16:35 | 只看该作者 |楼主
    可我的数据会有70W之多啊,看还有别的办法吗
    TA的精华主题TA的得分主题
    7
     楼主| 发表于 2017-8-12 16:37 | 只看该作者 |楼主
    用MID函数好像不行,因为会有1,1和345,2234这样的数据,miid无法区分
    TA的精华主题TA的得分主题
    8
    发表于 2017-8-12 16:42 | 只看该作者
    如果G列单元格中都是以逗号分隔的两个数字参考下面,不是,另加处理
  • Sub test()
  •     arr = Range("g1", [g1048576].End(3).Offset(, 2))
  •     For i = 1 To UBound(arr)
  •     If Not IsEmpty(arr(i, 1)) Then
  •       arr(i, 2) = Split(arr(i, 1), ",")(0)
  •       arr(i, 3) = Split(arr(i, 1), ",")(1)
  •     End If
  •     Next
  •     [g1].Resize(UBound(arr), 3) = arr
  • End Sub
  • 复制代码
    TA的精华主题TA的得分主题
    9
     楼主| 发表于 2017-8-12 16:49 | 只看该作者 |楼主
    这个不错,清晰,高效。但把问题引申一下,如果像“as,56,!33!你好!”这样的字符串,需要取出两个!号之间的数字又该怎么办呢?注意,字符串长短总是在变化的。
    TA的精华主题TA的得分主题
    10
    发表于 2017-8-12 16:53 | 只看该作者
    你没有描述所以以为是一样的,可以用Split方法楼上那个就是
    您需要登录后才可以回帖 登录 | 免费注册 新浪微博登陆
    本版积分规则
    关闭

    最新热点上一条 /1 下一条

    关注官方微信,每天坐享新鲜教程
    手机版|关于我们|联系我们|ExcelHome    GMT+8, 2017-11-18 23:32 , Processed in 0.125819 second(s), 23 queries , Gzip On, MemCache On.
    Powered by Discuz! X3.3 © 2001-2017 Wooffice Inc.
        沪公网安备 31011702000001号 沪ICP备11019229号 本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:徐怀玉律师 李志群律师
    快速回复 返回顶部 返回列表
    99uu优优