找回密码
 立即注册
搜索
楼主: 妮可宝贝

EXCEL技巧专辑..(欢迎参与,共同学习)

[复制链接]

88

主题

5708

回帖

7672

积分

网站编辑

积分
7672
发表于 2008-3-18 23:20:33 | 显示全部楼层
呵呵,殊途同归,多种方法均可达到同一目的

相比复杂公式而言,俺更情愿选择分步骤来解决问题并使用相对较简单的公式,或者直接选用宏的方式,这样容易查错,思路较清晰

[ 本帖最后由 鹤影 于 2008-3-18 23:26 编辑 ]
回复

使用道具 举报

88

主题

5708

回帖

7672

积分

网站编辑

积分
7672
发表于 2008-3-19 00:45:35 | 显示全部楼层
;19;19

MID(A2,4,FIND(".",A2,4)-FIND(".",A2)-1)  

分列获取B段IP的过程被1001以公式的方式表达出来,挺独特的
回复

使用道具 举报

623

主题

8454

回帖

7741

积分

版主

弱弱的海豚

积分
7741
 楼主| 发表于 2008-3-25 16:29:02 | 显示全部楼层
选择菜单工具-加载宏-规划求解,把规划求解前面的复选框勾上,点确定就可以用了。
如果在加载宏里面没有规划求解项,就要用office光盘完全安装excel的其它几个组件。
用了以后把加载宏前的勾去掉,加载宏会让excel打开速度变慢

其实,不管是在2000还是在2003中,你都可以这样得到一个随机整数:

如果要生成 a,b 之间的随机实数,请使用:
RAND()*(b-a)+a

再用int取整:   int(RAND()*(b-a)+a )
其实我本来什么都没有....


俺是多尔的豌豆.. 俺是墙根...  俺还有那乌黑亮丽的长发...



上得了厅堂,下得了厨房,写得了代码,查得出异常,杀得了木马,翻得了围墙,开得起好车,买得起新房,斗得过二奶,打得过流氓
回复

使用道具 举报

48

主题

762

回帖

1088

积分

金牌会员

积分
1088
发表于 2008-3-25 18:49:18 | 显示全部楼层

万能的。。。excel有这个功能么?

如图:


我的数据,有。。的部分表示是连续的数字,有没有办法可以自动填充。。部分缺少的数字?C列的数字是我手工补上去的,有没有办法自动完成呢?

本帖子中包含更多资源

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

×
回复

使用道具 举报

88

主题

5708

回帖

7672

积分

网站编辑

积分
7672
发表于 2008-3-25 21:08:41 | 显示全部楼层
OFFICE安装习惯问题

不要默认安装,选自定义——本地运行全部

你会有很多惊喜
回复

使用道具 举报

88

主题

5708

回帖

7672

积分

网站编辑

积分
7672
发表于 2008-3-25 21:23:28 | 显示全部楼层
宏可以实现,妮可的代码短小精干,俺是初学者,就不现丑了

等着看妮可的代码,学习一下,呵呵

[ 本帖最后由 鹤影 于 2008-3-25 21:37 编辑 ]
回复

使用道具 举报

623

主题

8454

回帖

7741

积分

版主

弱弱的海豚

积分
7741
 楼主| 发表于 2008-3-25 23:16:43 | 显示全部楼层
alt+F11
然后菜单,插入模块..

然后粘贴以下内容,最后按F5, 实现你需要的功能:
  1. Sub insertNumber()
  2. Dim oldCol As Long, printCol As Long
  3. Dim rowI As Long, rowP As Long, sTmp As String
  4. Dim j As Long, lastN As Long, nextN As Long
  5. oldCol = 1   '原始列号
  6. printCol = 3 '需要打印的列号
  7. Do
  8. rowI = rowI + 1 '逐行读取
  9. sTmp = Cells(rowI, oldCol).Value
  10. Select Case sTmp
  11. Case Is = ""
  12. Exit Do '如果此行为空就退出
  13. Case Is = ".." '如果为.. 就补齐中间的数据
  14. If rowI <= 1 Then'如果首行为.. 就输出一个错误标记
  15. rowP = rowP + 1
  16. Cells(rowP, printCol).Value = "Error"
  17. Cells(rowP, printCol).Interior.Color = vbRed'并改变背景色为红色
  18. Else
  19. lastN = Val(Cells(rowI - 1, oldCol).Value)
  20. nextN = Val(Cells(rowI + 1, oldCol).Value)
  21. For j = lastN + 1 To nextN - 1 '循环补齐需要插入的内容
  22. rowP = rowP + 1
  23. Cells(rowP, printCol).Value = j
  24. Cells(rowP, printCol).Interior.Color = vbYellow '并改变背景色为黄色
  25. Next
  26. End If
  27. Case Else
  28. rowP = rowP + 1
  29. Cells(rowP, printCol).Value = sTmp '正常行输出
  30. End Select
  31. Loop
  32. End Sub
复制代码
:loveliness:
其实我本来什么都没有....


俺是多尔的豌豆.. 俺是墙根...  俺还有那乌黑亮丽的长发...



上得了厅堂,下得了厨房,写得了代码,查得出异常,杀得了木马,翻得了围墙,开得起好车,买得起新房,斗得过二奶,打得过流氓
回复

使用道具 举报

623

主题

8454

回帖

7741

积分

版主

弱弱的海豚

积分
7741
 楼主| 发表于 2008-3-25 23:27:03 | 显示全部楼层
下图是测试效果..

自动补齐的单元格背景色为黄色, 如果首行为..的话, 会因为没有起始项, 返回为红色背景的error提示..

本帖子中包含更多资源

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

×
其实我本来什么都没有....


俺是多尔的豌豆.. 俺是墙根...  俺还有那乌黑亮丽的长发...



上得了厅堂,下得了厨房,写得了代码,查得出异常,杀得了木马,翻得了围墙,开得起好车,买得起新房,斗得过二奶,打得过流氓
回复

使用道具 举报

48

主题

762

回帖

1088

积分

金牌会员

积分
1088
发表于 2008-3-26 12:10:45 | 显示全部楼层
问题解决了,非常感谢!妮可宝贝~~
回复

使用道具 举报

602

主题

5613

回帖

8158

积分

网站编辑

积分
8158
发表于 2008-3-27 17:03:38 | 显示全部楼层
特奇怪,手工计算下来是59910.55,  用公式却得到59910.50
求解,谢谢啦~~~

见附件;

本帖子中包含更多资源

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

×
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|海浩社区

GMT+8, 2025-9-14 17:31 , Processed in 0.084744 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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