基于活动单元格select两列?
我试图在2组的长列上做条件格式。我不知道如何logging一个macros,它将从活动单元格和旁边的列中select整个列,然后应用条件格式化。 然后向下移动两个单元格并重复。
这是我迄今为止,但它会继续回到那些特定的细胞,我需要它移动到右边2。
Sub findDups() ' ' findDups Macro ActiveCell.EntireColumn.Select Selection.FormatConditions.AddUniqueValues Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority Selection.FormatConditions(1).DupeUnique = xlDuplicate With Selection.FormatConditions(1).Font .Color = -16383844 .TintAndShade = 0 End With With Selection.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 13551615 .TintAndShade = 0 End With Selection.FormatConditions(1).StopIfTrue = False Range("M1").Select Worksheets("User Check List").Activate Selection.Offset(0, 2).Select End Sub
这应该让你开始。 我完全避免使用Selection
,只使用ActiveCell
作为知道从何处启动macros的一种手段。 最好,你可以用Application.InputBox
做到这一点,但这不是什么大不了的事情。
因为我不知道要循环多less次,所以我使用了一个Do ... Loop
语句,并且这个语句会一直持续到列号> 26.您可以在Loop Until ...
语句中更改它。
Sub findDups() Dim startCell As Range Dim formatCols As Range Set startCell = ActiveCell Do Set formatCols = startCell.Resize(1, 2).EntireColumn formatCols.FormatConditions.AddUniqueValues formatCols.FormatConditions(formatCols.FormatConditions.Count).SetFirstPriority formatCols.FormatConditions(1).DupeUnique = xlDuplicate With formatCols.FormatConditions(1).Font .Color = -16383844 .TintAndShade = 0 End With With formatCols.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = 13551615 .TintAndShade = 0 End With Set startCell = startCell.Offset(0, 2) Loop Until startCell.Column >= 26 End Sub
以下是输出格式的示例: