excel vba生成具有不同字体颜色的格式单元格
我想用vba生成一个特定布局的excel表单。 我的一个子程序是字体颜色。 它看起来像这样:
Sub SetFont(cell1, cell2 As range, fcolor As String) range(cell1, cell2).Select If fcolor = "w" Then With Selection.Font .ThemeColor = xlThemeColorLight1 .TintAndShade = 0 End With ElseIf fcolor = "b" Then With Selection.Font .ThemeColor = xlThemeColorDark1 .TintAndShade = 0 End With End If End Sub
但它不起作用。 字体总是以黑色生成。 我不知道为什么。
它适用于我,但是有一个逆转; xlThemeColorLight1
会产生深色的文字,而xlThemeColorDark1
则会产生较轻的文字,这是非常愚蠢的,但是你去了。
Sub foo() SetFont Range("A1"), Range("A6"), "b" End Sub Sub SetFont(cell1 As Range, cell2 As Range, fcolor As String) If fcolor = "w" Then With Range(cell1, cell2).Font .ThemeColor = xlThemeColorLight1 End With ElseIf fcolor = "b" Then With Range(cell1, cell2).Font .ThemeColor = xlThemeColorDark1 End With End If End Sub
不相关的,但如果你有cell1, cell2 As range
只有cell2
被声明为typesrange
, cell1
保持一个变种。
可以试试这个:Sub SetFont(cell1,cell2作为范围,fcolor作为string)range(cell1,cell2)。select如果fcolor =“w”然后With Selection.Interior.ThemeColor = xlThemeColorLight1 .TintAndShade = 0 End With ElseIf fcolor = “b”然后用Selection.Interior.ThemeColor = xlThemeColorDark1 .TintAndShade = 0 End With End If
结束小组