excel怎么用宏批量处理条件格式
我想实现如下功能,宏该怎么编辑?当我选定某行第二列单元格时,然后执行宏,则介于该行第三列与第四列单元格中数值之间的该行其他单元格填充为黑色...
我想实现如下功能,宏该怎么编辑?
当我选定某行第二列单元格时,然后执行宏,则
介于该行第三列与第四列单元格中数值之间的该行其他单元格填充为黑色 展开
当我选定某行第二列单元格时,然后执行宏,则
介于该行第三列与第四列单元格中数值之间的该行其他单元格填充为黑色 展开
4个回答
展开全部
一般的套路:点录制宏,处理一家,停止录制,编辑刚才的录制代码,一般是增加while或者for的循环,完成所有数据的处理。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-02-06
展开全部
这个用宏貌似不行,宏没法确定你所选单元格是哪个……
用VBA还差不多。先获取所选单元格的值,然后将3与4列与其比较,小的就黑~
用VBA还差不多。先获取所选单元格的值,然后将3与4列与其比较,小的就黑~
追问
具体的怎么呢弄啊
追答
经过测试,条件格式也可以,不过每次选中第二列某个数据之后得按一下F9。选中除BCD列以外的所有列,然后在条件格式里输入公式
=(--(MID(CELL("ADDRESS"),FIND("$",CELL("ADDRESS"),2)+1,LEN(CELL("ADDRESS"))-FIND("$",CELL("ADDRESS"),2)))=ROW(A1))*(A1>MIN($D1,$C1))*(D10
设定格式为黑色填充。
当选定第二列某个数据之后F9,就出现想要的结果了。
如果用VBA更简单。
在工作表中加入以下代码.(我这里假定范围是A1:E25,你自己更改范围)
选中第二列的值之后就立即会将特定单元格抹黑.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim x As Integer
Dim d As Integer
If Selection.Column = 2 Then
x = Application.Min(Cells(Selection.Row, 3).Value, Cells(Selection.Row, 4).Value)
d = Application.Max(Cells(Selection.Row, 3).Value, Cells(Selection.Row, 4).Value)
Range("A1:e25").Interior.ColorIndex = 0
For Each Target In Range("A1:e25")
If Target.Value > x And Target.Value 2 And Target.Row = Selection.Row Then
Target.Interior.ColorIndex = 1
End If
Next
else
Range("A1:e25").Interior.ColorIndex = 0
End If
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用宏录制即可,如果录制出来的宏不能满足需要,可以再在里面修改
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上的说的有点误差,宏和VBA事实上是一回事,宏就是VBA做成的啊,怎么会是宏实现不了而VBA能实现呢,你所说的宏是录制宏吧?呵呵~楼主你能再说详细点吗?我看看能不能帮你实现。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询