Excel精英培训网

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

[已解决]请老师们帮忙改代码

[复制链接]
发表于 2013-8-5 08:51 | 显示全部楼层 |阅读模式
请老师们帮忙改代码!详情看附件。
请老师帮忙改代码.zip (8.14 KB, 下载次数: 11)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-8-5 09:39 | 显示全部楼层    本楼为最佳答案   
偷懒了,用单元格操作完成,数据量大时速度慢
  1. Sub aa1()
  2. Dim i%, j%, k%, l%, m%, Arr, ii&
  3. Arr = Range("C1:D17")
  4. For ii = 2 To UBound(Arr)
  5.     i = Int(Arr(ii, 1))
  6.     j = Int(Arr(ii, 2))
  7.     If i = 0 Or j = 0 Then GoTo 100
  8.     Cells(ii, 5).Resize(1, 4).Interior.ColorIndex = 1
  9.     k = j - i + 5
  10.     If k < 5 Then k = k + 4
  11.     Cells(ii, k).Interior.ColorIndex = 5
  12.     m = 1
  13.     For l = 1 To 4 - j
  14.         If k + m > 8 Then m = m - 4
  15.         Cells(ii, k + m).Interior.ColorIndex = 3
  16.         m = m + 1
  17.     Next l
  18. 100:
  19.   For i = 5 To 8
  20.     If Cells(ii, 3) <> "" Then Cells(ii, i) = IIf(Cells(ii, 3) + i - 5 > 4, Cells(ii, 3) + i - 9, Cells(ii, 3) + i - 5)
  21.   Next i
  22. Next
  23. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2013-8-5 09:48 | 显示全部楼层
非常感谢!老师你给做个优化的好吗?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 02:55 , Processed in 0.409837 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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