如果功能不工作VBA
问题描述:
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
答
变化
Sheets("" & Filename).Cells(5, y2).Font.FontStyle = Arial
这样:
Sheets("" & Filename).Cells(5, y2).Font.Name = "Arial"
+0
问题解决感谢您的帮助 –
答
转到你的第一行代码,并添加此行:
Option Explicit
现在尝试运行您的代码。
你会得到一个错误,因为变量Arial
没有定义。
这会暗示你,这也许应该是:
Sheets("" & Filename).Cells(5, y2).Font.Name = "Arial"
答
几件事情:
假设你已经正确声明所有的变量,你遇到的唯一问题是,该单元没有按预期格式化。
- 正如已指出 -
Arial
必须"Ariel"
- 设置字体为格式的第一道防线。您可以添加粗体,斜体和蓝色格式,然后将其设置为Ariel,以去除粗体&斜体设置。
编辑:我的错误 - 那是因为你使用.Font.FontStyle = "Arial"
。FontStyle
中的更改将删除粗体&斜体。使用.Font.Name = "Arial"
保留以前应用的格式。 - 检查你没有任何条件格式对单元格设置,因为它会覆盖任何其他格式,你给它。
除此之外 - 我建议你FileName
变量更新到SheetName
- 没有错FileName
,你可以使用Purple_Rock_Lobber
如果你想和Excel不会在意,但是当代码中重新审视它会混淆人类几年的时间。
也不确定为什么你有双引号FileName
?
如果你手动选择单元格,并使用带命令手动更改,会发生什么? –
ActiveSheet.Cells(7,1)= .Font.Color RGB(0,0,255) ActiveSheet.Cells(7,1).Font.FontStyle = “粗斜体” ActiveSheet.Cells(7,1)。 Font.Name =“Arial” – BData