作者:乔山办公网日期:
返回目录:excel表格制作
如你的数复据在A列,代制码如下。
sub aa ()
for x =1 to range("A65536").end(xlup).row'建立循环百
if cells(x,1)=6 then'判断单元格度值
cells(x,1).interior.colorIndex = 3'单元格值等于6时,该知单元格填道充红色
end if
next x
end sub
楼主:你好,百对于你这个问题有个前提条件:
如果你的Excel版本是2003版,那么你只能用系统预设的56色。用VBA代码实现的其他填充色会被转度换为和这56色最接近的一种。
如果你的Excel版本是2007及以上,知那么单元格填充色几乎不受限制,你完全可以通过单元格填充的命令实现自定义颜色填充,支持RGB、HSL两种模道式,无需借助VBA。
如果使用VBA,代码如下:
Sub test()
'将A1单元格填充为红色,RGB(红,绿,蓝) ,红、绿、蓝取内值在0~255,可设置不同值容获得不同颜色。
Range("A1").Interior.Color = RGB(255, 0, 0) '填充为红色
'如果想去掉填充色,用这句
Range("A1").Interior.Pattern = xlnoe
End Sub
Sub gb()
Dim i
For i = 1 To 100
If Sheet1.Cells(i, 1) = 1 Then
Sheet1.Cells(i, 1).Interior.ColorIndex = 6
ElseIf Sheet1.Cells(i, 1) = 0 Then
Sheet1.Cells(i, 1).Interior.ColorIndex = 5
End If
Next
End Sub
'这句有问题
Range(rngS.Row, rngS.Column).Interior.ColorIndex = Sht1.Cells(i, 1).Interior.ColorIndex
'改为zhidao(原因:本身rngS已经被指定为目标单内元格的地址了.你不不用再重新转换)
rngS.Interior.ColorIndex = Sht1.Cells(i, 1).Interior.ColorIndex
'如果想转换的容话改为:
.Cells(rngS.Row, rngS.Column).Interior.ColorIndex = Sht1.Cells(i, 1).Interior.ColorIndex