Sub set_color() Dim r As Range, arr For Each r In Range("A:QE") arr = Split(r, ",") r.Font.Color = RGB(CInt(arr(0)), CInt(arr(1)), CInt(arr(2))) Next End Sub 报错 1004 本工作薄不能再使用其他新字体
时间: 2023-08-10 08:09:33 浏览: 60
这个错误通常发生在代码中尝试设置一个不存在于计算机上的字体时。可以尝试在代码中添加一个字体设置,如下所示:
```
Sub set_color()
Dim r As Range, arr
'设置使用的字体
Application.ScreenUpdating = False
Application.EnableEvents = False
With ThisWorkbook
.Styles.Add "TempStyle" '添加一个新样式
.Styles("TempStyle").Font.Name = "Arial" '设置字体为Arial
End With
For Each r In Range("A:QE")
arr = Split(r, ",")
r.Font.Color = RGB(CInt(arr(0)), CInt(arr(1)), CInt(arr(2)))
r.Font.Name = "TempStyle" '将字体设置为刚才添加的样式
Next
'删除使用的样式
With ThisWorkbook
.Styles("TempStyle").Delete
End With
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
```
这里添加了一个名为“TempStyle”的新样式,并将其字体设为Arial。在代码中处理完毕后,删除该样式。这样可以避免在代码中设置无法识别的字体而导致的错误。
阅读全文