VBAmacros,当前选定的单元格和行中的下一个单元格

我正在尝试编写一个VBAmacros来应用条件格式,它执行以下操作:

如果当前选定的单元格不等于右侧的单元格,请更改填充颜色。 到目前为止,我有这样的:

Sub Macro8() ' ' Macro8 Macro ' ' Keyboard Shortcut: Ctrl+e ' Cells.FormatConditions.Delete Range("G17:J17").Select Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _ Formula1:="=$K$17" Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority With Selection.FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorAccent5 .TintAndShade = 0.599963377788629 End With Selection.FormatConditions(1).StopIfTrue = True End Sub 

问题在于合并单元格的范围("G17:J17")和公式("$K$17")

它应该是Range("G$CurrentRow:J$CurrentRow")Formula1:="=$K$CurrentRow"但我只是不知道语法。

对不起,没有问题,但我是一个PLC程序员,而不是一个优秀的人。 在此先感谢您的帮助:)

Range("G17:J17")应该可能是activeCell.offset(0,1)假设您正在selectG列中的任何单元格。

如果你不这样做,你可能需要调整 – 查找ActiveCell()属性 – 它基本上返回当前激活的单元格作为一个Range()对象

公式可以是"=$K$" & activecell.row