[英]In an Excel User-Defined function, how can I determine which font is being used?
我有一个包含数千行的Excel文件。 有些单元格是粗体的 ,有些则不是。 通常,我能够确定哪些单元格为粗体,哪些单元格未使用此UDF:
Function isBold(cellBold)
Application.Volatile
If cellBold.Font.Bold = True Then
isBold = 1
ElseIf cellBold.Font.Bold = False Then
isBold = 0
Else
isBold = 0
End If
End Function
这对于在单元格上实际应用了粗体的单元格效果很好,除非导入了数据,并且原始源通过更改字体而不是通过将粗体字应用于单元格来将文本从常规更改为粗体。
例如,常规字体为“ Times New Roman”,粗体字体为“ Times New Roman Bold”。 因此,尽管在页面上看起来好像该单元格已应用了粗体,但上面的UDF无法正常工作。
如何更改UDF以识别字体?
此代码查找字体名称是否包含“ Bold”字符串,如果是,则将布尔值设置为1:
Function isBold(cellBold)
Application.Volatile
pos = InStr(cellBold.Font.Name, "Bold")
If pos > 0 Then
isBold = 1
End If
End Function
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.