VBA删除绿色文本:Font.ThemeColor

我有这些工作表,我用绿色文本作为缩写来请求数据库,完整的名称仅供用户使用。 我认为这是一个好主意,使用不同的颜色,所以这些评论可以很容易地删除。 我设法看看我的工作表中所有使用的单元格。

我现在想做的是testing字体的颜色。

On Error Resume Next If cl.Font.ThemeColor = xlThemeColorAccent3 Then cl.Value = "" End If On Error GoTo 0 

编辑:

我试过这个:

 For Each WS In WB.Worksheets For Each cl In WS.Range("A1:H10").Cells On Error GoTo Nextiteration If cl.Font.ThemeColor = xlThemeColorAccent3 Then cl.Value = "" End If Nextiteration: Next Next 

但它删除我的范围内的所有彩色细胞。

你能解释我为什么吗? 你能告诉我如何select只绿色的单元格(橄榄绿,口音3)

这是由于您放置error handling代码的方式。 当If cl.Font.ThemeColor = xlThemeColorAccent3 Then抛出一个exception,它会被忽略,并继续执行下一步。

尝试访问颜色当前不是主题的对象的主题颜色将导致无效的请求运行时错误。

使用Err.Number找出是否引发错误。

 ----Loop---- On Error Resume Next If cl.Font.ThemeColor = xlThemeColorAccent3 Then If Err.Number = 0 Then ' will be 0 only if no error occurred in the previous step cl.Value = "" End If End If Err.Clear ' Clear error state ----End Loop----