vba - 使用 LastSaved 函数时,VBA 在某些项目(但不是其他项目)上接收 ByRef 参数类型不匹配
问题描述
我正在尝试编写一个脚本,该脚本将列出最后一次保存每六个输入模板的最后时间/日期。前 4 个似乎工作正常,但是当我到达第 5 个和第 6 个(TemplateWB1 和 TemplateWB2)时,我收到以下错误:“编译错误:ByRef 参数类型不匹配”
我无法弄清楚为什么其中一些有效,而其他一些则无效..?我已经检查并重新检查了几次文件路径,它们是正确的。
Sub RefreshSaveDateTimes()
Dim DateWBpath As String
Dim DistWBpath As String
Dim prdWBpath As String
Dim sparkUPCitemWBpath As String
Dim myDate As Date
Dim menuMenuWS As Worksheet
Dim TemplateWB1, TemplateWB2 As String
Set menuMenuWS = ActiveWorkbook.Worksheets("Menu")
DateWBpath = "P:\CPW Planning Tool\DataSources\DateTable.xlsx"
DistWBpath = "P:\CPW Planning Tool\Input Templates\Confections\Confections Distribution Inputs.xlsm"
prdWBpath = "P:\CPW Planning Tool\Input Templates\Confections\Confections PRD Inputs.xlsm"
sparkUPCitemWBpath = "P:\CPW Planning Tool\Input Templates\Confections\Confections Spark UPC Item Table.xlsx"
TemplateWB1 = "P:\CPW Planning Tool\Input Templates\Confections\Forecast Template 1 - Confy.xlsm"
TemplateWB2 = "P:\CPW Planning Tool\Input Templates\Confections\Forecast Template 2 - Confy.xlsm"
myDate = LastSaved(DateWBpath)
menuMenuWS.Cells(2, 3).Select
ActiveCell.Value = myDate
myDate = LastSaved(sparkUPCitemWBpath)
menuMenuWS.Cells(3, 3).Select
ActiveCell.Value = myDate
myDate = LastSaved(prdWBpath)
menuMenuWS.Cells(4, 3).Select
ActiveCell.Value = myDate
myDate = LastSaved(DistWBpath)
menuMenuWS.Cells(5, 3).Select
ActiveCell.Value = myDate
myDate = LastSaved(TemplateWB1)
menuMenuWS.Cells(6, 3).Select
ActiveCell.Value = myDate
myDate = LastSaved(TemplateWB2)
menuMenuWS.Cells(7, 3).Select
ActiveCell.Value = myDate
End Sub
解决方案
只是因为当你写这个时:
Dim TemplateWB1, TemplateWB2 As String
TemplateWB1
实际上被声明为 a Variant
,而不是 a String
。您必须为每个变量指定类型:
Dim TemplateWB1 As String, TemplateWB2 As String
推荐阅读
- react-native - 如何动态分配每个按钮以在单击时更改颜色
- ios - 即使禁用 contentInset Xcode 9.4.1,UITableView 仍然在顶部留下空间
- ios - 无法将类型值转换为 UINavigationController swift3
- ios - iOS 12 Siri 快捷方式与 plist
- javascript - Google Maps Javascript 跨域脚本标签支持
- javascript - PHP:如何正确地回显类和 id 以供 jQuery 呈现
- java - 添加或删除 SynchronizedMap 和同步块
- javascript - Typescript/lodash:如何获取具有多个公共属性的结果/对象
- node.js - 检查 node.js 中的 instanceof 文件
- javascript - 扩展控制器在提交时具有未定义的形式