Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
123
返回列表 发新帖
楼主: laoau138

[VBA] 用VBA判断平行四边形填充绿色底单元格

[复制链接]
 楼主| 发表于 2016-10-7 19:46 | 显示全部楼层
grf1973 发表于 2016-10-2 20:00
你得把你的思路介绍一下,代码加一点说明,尤其是2个函数实现什么功能。
读程序比自己编要难得多。

grf1973大侠也如此说
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
回复

使用道具 举报

 楼主| 发表于 2016-10-7 22:43 | 显示全部楼层
本帖最后由 laoau138 于 2016-10-7 22:48 编辑
today0427 发表于 2016-10-6 22:45
http://www.excelpx.com/thread-424862-1-1.html这个,我想了半天,感觉自己做出来会比他原来自带的那个 ...

发答案了,还有什么好办法,请发原贴啊

http://www.excelpx.com/thread-424862-1-1.html
回复

使用道具 举报

发表于 2016-10-11 22:16 | 显示全部楼层
这个应该也算吧?

本帖子中包含更多资源

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

x
回复

使用道具 举报

 楼主| 发表于 2016-10-12 08:52 | 显示全部楼层
本帖最后由 laoau138 于 2016-10-12 08:55 编辑
wanao2008 发表于 2016-10-11 22:16
这个应该也算吧?

这个也算了

用VBA推算组成平行四边形最后一个数字

http://www.excelpx.com/thread-424828-1-1.html

回复

使用道具 举报

发表于 2016-10-14 18:25 | 显示全部楼层
Sub 雄鹰()
Dim r
On Error Resume Next
Application.ScreenUpdating = False
t = Timer
r = Cells(Rows.Count, 1).End(xlUp).Row
Range("e11:t" & r).Interior.ColorIndex = 0
i = 11
Dim g1 As Range
Dim g2 As Range
Dim g3 As Range
Dim g4 As Range
For i = i To r '遍历每一行数据
     y = 1: x = 1
     Do While y < 7
        Set g1 = Range("e" & i & ":t" & i).SpecialCells(xlCellTypeFormulas, 1)
        Set g2 = Range("e" & i + x & ":t" & i + x).SpecialCells(xlCellTypeFormulas, 1)
        Set g3 = Range("e" & i + x + 1 & ":t" & i + x + 1).SpecialCells(xlCellTypeFormulas, 1)
        Set g4 = Range("e" & i + x + 2 & ":t" & i + x + 2).SpecialCells(xlCellTypeFormulas, 1)
        If g1 > g2 And g3 > g4 And (g1.Column - g2.Column) = (g3.Column - g4.Column) And (g1.Row - g3.Row) = (g2.Row - g4.Row) Or _
           g1 < g2 And g3 < g4 And (g2.Column - g1.Column) = (g4.Column - g3.Column) And (g3.Row - g1.Row) = (g4.Row - g2.Row) Then
          g1.Interior.ColorIndex = 14
          g2.Interior.ColorIndex = 14
          g3.Interior.ColorIndex = 14
          g4.Interior.ColorIndex = 14
        End If
        y = y + 1
        x = x + 1
     Loop
Next i
Application.ScreenUpdating = True
MsgBox Format(Timer - t, "0.00") & "秒"
End Sub

评分

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

查看全部评分

回复

使用道具 举报

发表于 2016-10-14 18:27 | 显示全部楼层
laoau138 发表于 2016-10-2 18:10
高手再看这个

用VBA推算组成平行四边形最后一个数字

水平有限,只能做到这样了!其他的那个题请大神思考

评分

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

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-10-14 19:31 | 显示全部楼层
雄鹰2013 发表于 2016-10-14 18:25
Sub 雄鹰()
Dim r
On Error Resume Next

已经好高手了
回复

使用道具 举报

 楼主| 发表于 2016-10-14 19:32 | 显示全部楼层
雄鹰2013 发表于 2016-10-14 18:27
水平有限,只能做到这样了!其他的那个题请大神思考

还有2条问题,你指哪一条不能做

用VBA改写过滤增加容错条件

http://www.excelpx.com/thread-424928-1-1.html


用VBA推算组成平行四边形最后一个数字

http://www.excelpx.com/thread-424828-1-1.html
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-4 06:23 , Processed in 0.379904 second(s), 6 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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