我打算让用户将文件名加载到“管理单元格”(在代码中引用),并通过自定义数字格式“标记”这样的单元格,因此省略了与此类相邻的附加列(文件名:XXX)。
为了便于阅读,我打算将“Filename”改为粗体,将“XXX”改为普通.fontStyle。
看起来.characters.FontStyle不适用于具有自定义数字格式的单元格(例如numberformat =“”“Filename。:”“@”)
将单元格设置为标准数字格式将应用两个.FontStyles。
手动将单元格设置为粗体,并通过后者的vba反转也不起作用。在.FontSyle“调整”之后设置自定义数字格式也不起作用。
Sub test()
With Range("A1")
.NumberFormat = """Filename: ""@"
.Value = "Sample.csv"
lngPos = InStr(.Text, ":")
Debug.Print lngPos
With .Characters(Start:=1, Length:=lngPos - 1).Font
.FontStyle = "Bold"
End With
End With
With Range("A2")
.Value = "Filename: Sample.csv"
lngPos = InStr(.Text, ":")
Debug.Print lngPos
With .Characters(Start:=1, Length:=lngPos - 1).Font
.FontStyle = "Bold"
End With
End With
End Sub
我希望单元格状态为“Filename:Sample.csv”,“Filename:”为粗体,Sample.csv为普通字体样式,但只有“Sample.csv”为cell.value