我试图保存一个活动工作簿但是当我使用下面的代码时,我不断收到错误"编译错误:预期的函数或变量"用"格式"突出显示。
令我难以置信,因为我在另一个宏中使用了完全相同的功能和格式,并且完美地保存了文件。我还确保他们已经定义了相同类型的变量......
这是一行代码
ActiveWorkbook.SaveAs Filename:=SavedPath & format(Date, "mmddyyyy") & " 4512 GLUpload.xlsm"
变量savedpath是正常的,因为当我运行没有格式部分的这一行时,它会保存文件,但不知道为什么会搞砸它。在我的其他代码中也注意到,格式是大写的,但它不在这里。
答案 0 :(得分:5)
您获得的编译器错误表明VBA期望可赋值(文字,变量或函数的返回值)。这意味着等号右边的语句中的一个标识符不属于这些类别。因此,SavedPath
在某处定义为Sub SavedPath()
,或者在某处定义了Sub Format(arg1, arg2)
(如果它有不同数量的参数,您将得到“错误数量的参数或无效属性任务“错误”。第二条线索(在评论中)是将format
更改为强类型Format$
给出了“类型声明字符与声明的数据类型不匹配”错误。这指向编译器不将符号format
视为函数调用(Format$()
是Format()
的强类型版本)。解决方案是跟踪错误使用VBA函数名称并重命名。
避免使用VBA关键字和函数名称的一个完美示例是良好的做法。