VBA-条件格式(字体大小)
目的:条件格式-字体大小 如果K19=“首付来源:”则K19 font 10,否则为12 如果K21=“Amount:”则K21字体为10,否则为12 尝试:VBA-条件格式(字体大小),vba,excel,Vba,Excel,目的:条件格式-字体大小 如果K19=“首付来源:”则K19 font 10,否则为12 如果K21=“Amount:”则K21字体为10,否则为12 尝试: 选项显式 私有子工作表_更改(ByVal目标作为范围) 设置目标=ActiveSheet.Range(“K19”) 如果Target=“首付来源:”则 使用ActiveSheet.Range(“K19”).Font .Name=“Arial” .尺寸=10 以 其他的 使用ActiveSheet.Range(“K19”).Font .N
选项显式
私有子工作表_更改(ByVal目标作为范围)
设置目标=ActiveSheet.Range(“K19”)
如果Target=“首付来源:”则
使用ActiveSheet.Range(“K19”).Font
.Name=“Arial”
.尺寸=10
以
其他的
使用ActiveSheet.Range(“K19”).Font
.Name=“Arial”
.尺寸=12
以
出口接头
End Sub
解决了当B3变为购买时更改K19和K21的选项。注意:这仅在B3更改时触发
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B3")) Is Nothing Then
If Target.Value = "Purchase" Then
With ActiveSheet.Range("K19").Font
.Name = "Arial"
.Size = 10
End With
With ActiveSheet.Range("K21").Font
.Name = "Arial"
.Size = 10
End With
Else
With ActiveSheet.Range("K19").Font
.Name = "Arial"
.Size = 12
End With
With ActiveSheet.Range("K21").Font
.Name = "Arial"
.Size = 12
End With
End If
End If
End Sub
此代码有效
因此将其更改为B3
?当它工作时,它有点强制/冗余。你的问题可以归结为“我如何使用If-Then语句”或“我如何使一个范围引用多个单元格?”搜索其中任何一个,你都会找到你的答案。为什么要重置目标?@Bruce Wayne-条件格式与字体大小不匹配。啊,你说得对!对不起,我可以发誓你可以(我用它的字体颜色和粗体,所以数字大小是可以的)。删除Set Target=ActiveSheet.Range(“K19”)
行,如果为K21单元格添加语句,该行应该可以工作。每次宏触发时,您都会将目标重置为K19。所以,即使你改变了K21,它也会立即改变为K19。