Excel精英培训网

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

[已解决][求助]由1个号码提取6-11个号码的函数

[复制链接]
发表于 2012-7-14 18:53 | 显示全部楼层 |阅读模式
如题,请哪位老师帮助改一公式。见附件。谢谢! 由1个号码提取6-11个号码的函数.rar (5.89 KB, 下载次数: 30)
发表于 2012-7-14 19:19 | 显示全部楼层    本楼为最佳答案   
在你基础上改的,分成两部分连接
  1. =SUBSTITUTE(TEXT(SUM(TEXT(D5+{-5,-4,-3,-2,-1},"[>33]!0;[<0]!0;0;")*10^{8,6,4,2,0}),"00 00 00 00 00"),"00",)&" "& SUBSTITUTE(TEXT(SUM(TEXT(D5+{0,1,2,3,4,5},"[>33]!0;[<0]!0;0;")*10^{10,8,6,4,2,0}),"00 00 00 00 00 00"),"00",)
复制代码
回复

使用道具 举报

 楼主| 发表于 2012-7-14 19:37 | 显示全部楼层
hrpotter 发表于 2012-7-14 19:19
在你基础上改的,分成两部分连接

谢谢老师!正合我意!
回复

使用道具 举报

发表于 2012-7-14 20:00 | 显示全部楼层
学习学习                     
回复

使用道具 举报

发表于 2012-7-14 20:04 | 显示全部楼层
这咋看起来有点像彩票
回复

使用道具 举报

发表于 2012-7-14 20:09 | 显示全部楼层
做了个VBA的,方法不太好,不过还贴出来算了!
  1. Sub ek_sky()
  2. Dim arr1, arr2, arr3(1 To 10000, 1 To 6)
  3. Dim i&, j&, k&
  4. Dim d As Object
  5. Set d = CreateObject("scripting.dictionary")
  6. arr1 = Array(-5, -4, -3, -2, -1, 1, 2, 3, 4, 5)
  7. arr2 = Range("D5:I12").Value
  8. For i = 1 To UBound(arr2)
  9.     For j = 1 To UBound(arr2, 2)
  10.         For k = 0 To UBound(arr1)
  11.             If arr2(i, j) + arr1(k) > 0 And arr2(i, j) + arr1(k) < 34 Then
  12.                 d(Format(arr2(i, j) + arr1(k), "00")) = ""
  13.             End If
  14.         Next k
  15.     arr3(i, j) = Join(d.keys, " ")
  16. d.RemoveAll
  17. Next j
  18. Next i
  19. Range("K5:P10000").ClearContents
  20. Range("K5").Resize(UBound(arr2), 6) = arr3
  21. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2012-7-14 20:47 | 显示全部楼层
周义坤 发表于 2012-7-14 20:09
做了个VBA的,方法不太好,不过还贴出来算了!

谢谢啦!不过不会用哟。
回复

使用道具 举报

发表于 2012-7-14 21:42 | 显示全部楼层
      这个研究什么呀!
回复

使用道具 举报

发表于 2012-7-15 17:56 | 显示全部楼层
学习学习学习学习
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 22:39 , Processed in 0.243831 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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