根据另一个单元格的内容格式化相邻单元格

我相信这可能是一个简单的macros观; 它似乎不可能与条件格式,我对macros的经验有限。

我在Excel工作簿中有很多行。 我想说的是:

如果我在当前选中的单元格中放置一个<符号,那么右边的单元格的格式应该是粗体,否则不应该使其粗体。

我曾经用不同的“IF”陈述蒙骗了,但是我认为我离开了基地。

我怎么能做到这一点?

编辑

这可能是一个更好的方式来表明这一点,因为由于某种原因,我仍然不能得到它的工作; 我已经包含了一个截图。

我正在做什么的屏幕截图

(实际上,我意识到我向后提出了这个问题……应该是,如果有一个带有“<”符号的单元格,那么右边的单元格应该是粗体)。

无论如何,让我们把重点放在第12行为例。 如果有一个公式可以应用到整个行上:“看看单元格C12,如果没有任何内容,那么D12就是有底气的,看看单元格E12,如果没有任何内容,那么F12应该是更底层的等等。看看单元格Q12,如果它有一个“<”符号,那么R12就不应该被强化“。 唯一的例外就是包含“ – ”的单元格……那些不需要强调的东西。

使用CF,select要应用格式的单元格的范围 – 比如列B:M(不是A,因为它没有“立即在左边 ”) – HOME>样式 – 条件格式,新规则…, 使用公式确定要格式化哪些单元格,在此公式为真的情况下格式化值

 =A1="<" 

格式... ,select粗体,确定,确定。

编辑通过“那些不需要有底气”我把它,你不介意,如果他们是。 这可能允许您对整个工作表(或者ColumnsC:X)进行强化并应用单个条件格式。 然而,这会导致他们自己的底气,我认为你不喜欢。 所以如果要根据两个单独的条件来应用格式化,则需要两个单独的规则。 select列D:X和*粗体**:

 =C1="" 

对于Regular,使用相同的范围select:

 =C1="<" 

你是对的,这是一个简单的macros。 而@Scott Craner也是对的。 条件格式将会起作用。 不过,有时候你已经有了很多的条件格式,添加另一条规则变得有点棘手,所以这里是macros。 把它放在ThisWorkbook部分。

 Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Target.Value = "<" Then Sh.Cells(Target.Row, Target.Column + 1).Font.Bold = True End If End Sub 

正如你所看到的,你可以通过检查已更改的单元格的值来制定自己的小格式化规则。

要了解更多信息,请search“Learn Excel”。 大量的资源。