2014-09-06 71 views
0

我有一个项目正在进行中,在这个项目中,工作人员根据他们的表现将会红色挂起或绿色。然后将结果复制到另一个工作表,然后列出并编译结果。基本上,当员工休假时,我想让单元格的背景变成灰色。所以我想选择连续的单元格范围,并想要一个我可以按下的按钮,它会自动将所有这些单元格的背景变为灰色。这是我想出了目前我想选择一系列单元格并为背景着色

Sub Macro1() 
ActiveCell.CurrentRegion.Select 
    For Each cell In Selection 
    With Selection.Interior 
     .Pattern = xlSolid 
     .PatternColorIndex = xlAutomatic 
     .ThemeColor = xlThemeColorDark1 
     .TintAndShade = -0.249946592608417 
     .PatternTintAndShade = 0  
    End With 
    Next cell End Sub 

我试图遍历的单元格区域和颜色各一的 - 但只有活动单元格颜色是他们的一种方式做到这一点?

+0

如果你有一个选择,为什么不直接从家用色带设置单元格颜色? – 2018-02-05 08:17:45

回答

2

所以我想选择一排行中的单元格,想要一个我可以按下的按钮,它会自动将所有这些单元格的背景颜色变为灰色。

如果你想只灰色选定单元格,然后这将是你想要做什么

Sub Sample() 
    '~~> Check if what the user selected is a valid range 
    If TypeName(Selection) <> "Range" Then 
     MsgBox "Select a range first." 
     Exit Sub 
    End If 

    Selection.Interior.ColorIndex = 48 
End Sub 
1
Sub Macro1() 
    For Each cell In Selection 
    With Selection.Interior 
     .Pattern = xlSolid 
     .PatternColorIndex = xlAutomatic 
     .ThemeColor = xlThemeColorDark1 
     .TintAndShade = -0.249946592608417 
     .PatternTintAndShade = 0  
    End With 
    Next cell End Sub 

,如果你删除它activecell.select藏汉工作

+1

为什么你需要循环遍历每一个细胞,当你可以一次染色所有细胞? – 2014-09-07 05:57:31