Visual Basic,Excel VSTO:设置工作表选项卡颜色
Visual Basic, Excel VSTO: Set worksheet tab color
全部,
希望你一切顺利!
我目前正在将 VSTO 中的一些 Visual C# 代码转换为 Visual Basic,运行 遇到工作表设置 Tab.Color 的问题。
目前,我正在这样做:
Dim c As Color
c = System.Drawing.Color.Blue
Dim w As Excel.Worksheet
w = Me.Application.Worksheets.Add()
w.Tab.Color = c
但是,无论 C 的值如何,选项卡始终为黑色。这在 Visual C# 中运行良好,但我无法找出 Visual Basic 的等效项。
非常感谢任何帮助!谢谢!
尝试w.Tab.Color = &hFF0000
VSTO 中的颜色很麻烦。与 System.Drawing.Color 不同,它们最初是 BGR 格式。所以我猜 C# 以某种方式处理它。无论如何,您可以使用一个简单的函数将颜色从 System.Drawing 转换为整数:
Function ConvertColor(ByVal color As System.Drawing.Color) As Integer
Return ((color.B * &h10000) + ((color.G * &h100) + color.R))
End Function
全部,
希望你一切顺利!
我目前正在将 VSTO 中的一些 Visual C# 代码转换为 Visual Basic,运行 遇到工作表设置 Tab.Color 的问题。
目前,我正在这样做:
Dim c As Color
c = System.Drawing.Color.Blue
Dim w As Excel.Worksheet
w = Me.Application.Worksheets.Add()
w.Tab.Color = c
但是,无论 C 的值如何,选项卡始终为黑色。这在 Visual C# 中运行良好,但我无法找出 Visual Basic 的等效项。
非常感谢任何帮助!谢谢!
尝试w.Tab.Color = &hFF0000
VSTO 中的颜色很麻烦。与 System.Drawing.Color 不同,它们最初是 BGR 格式。所以我猜 C# 以某种方式处理它。无论如何,您可以使用一个简单的函数将颜色从 System.Drawing 转换为整数:
Function ConvertColor(ByVal color As System.Drawing.Color) As Integer
Return ((color.B * &h10000) + ((color.G * &h100) + color.R))
End Function