2017-07-31 61 views
-1
If (Year(n) - Year(d) >= 1) Then 
    MsgBox "Latest Fiscal Year Data is" & dd & "Days," & md & "Months," & yd & "Years Old" 
    Sheets("" & Filename).Cells(5, y2).Font.Italic = True 
    Sheets("" & Filename).Cells(5, y2).Font.Color = RGB(0, 0, 255) 
    Sheets("" & Filename).Cells(5, y2).Font.Bold = True 
    Sheets("" & Filename).Cells(5, y2).Font.FontStyle = Arial 

End If 

文本颜色变成喜欢蓝色,但其它命令粗斜体不执行如果功能不工作VBA

+0

如果你手动选择单元格,并使用带命令手动更改,会发生什么? –

+0

ActiveSheet.Cells(7,1)= .Font.Color RGB(0,0,255) ActiveSheet.Cells(7,1).Font.FontStyle = “粗斜体” ActiveSheet.Cells(7,1)。 Font.Name =“Arial” – BData

回答

2

变化

Sheets("" & Filename).Cells(5, y2).Font.FontStyle = Arial 

这样:

Sheets("" & Filename).Cells(5, y2).Font.Name = "Arial" 
+0

问题解决感谢您的帮助 –

0

转到你的第一行代码,并添加此行:

Option Explicit 

现在尝试运行您的代码。

你会得到一个错误,因为变量Arial没有定义。

这会暗示你,这也许应该是:

Sheets("" & Filename).Cells(5, y2).Font.Name = "Arial" 
0

几件事情:

假设你已经正确声明所有的变量,你遇到的唯一问题是,该单元没有按预期格式化。

  • 正如已指出 - Arial必须"Ariel"
  • 设置字体为格式的第一道防线。您可以添加粗体,斜体和蓝色格式,然后将其设置为Ariel,以去除粗体&斜体设置。
    编辑:我的错误 - 那是因为你使用.Font.FontStyle = "Arial"FontStyle中的更改将删除粗体&斜体。使用.Font.Name = "Arial"保留以前应用的格式。
  • 检查你没有任何条件格式对单元格设置,因为它会覆盖任何其他格式,你给它。

除此之外 - 我建议你FileName变量更新到SheetName - 没有错FileName,你可以使用Purple_Rock_Lobber如果你想和Excel不会在意,但是当代码中重新审视它会混淆人类几年的时间。
也不确定为什么你有双引号FileName