在Excel中使用VBA的行和列的背景颜色
下面的宏可用于设置背景颜色,例如在任何工作表范围内的所有其他行或列:
Sub ShadeAlternateRows(rngTarget As Range, intColor As Integer, lngStep As Long) ' adds a background color = intColor to every lngStep rows in rngTarget ' example: ShadeAlternateRows Range("A1:D50"), 27, 2 ' colors every 2 rows light yellow Dim r As Long If rngTarget Is Nothing Then Exit Sub With rngTarget .Interior.ColorIndex = xlColorIndexNone ' remove any previous shading For r = lngStep To .Rows.Count Step lngStep .Rows(r).Interior.ColorIndex = intColor Next r End With End Sub Sub ShadeAlternateColumns(rngTarget As Range, _ intColor As Integer, lngStep As Long) ' adds a background color = intColor to every lngStep column in rngTarget ' example: ShadeAlternateColumns Range("A1:J20"), 27, 2 ' colors every 2 columns light yellow Dim c As Long If rngTarget Is Nothing Then Exit Sub With rngTarget .Interior.ColorIndex = xlColorIndexNone ' remove any previous shading For c = lngStep To .Columns.Count Step lngStep .Columns(c).Interior.ColorIndex = intColor Next c End With End Sub