我试图将工作簿中的一张纸保存为.txt文件-我要做的代码是:
assert ms[2] == 1;
(目录和文件名在宏的前面定义)
包含此代码的宏受密码保护。在不输入密码的情况下运行宏时,出现错误消息“运行时错误'1004':对象'_Workbook'的方法'SaveAs'失败”。当我打开Visual Basic并输入密码时,宏运行正常,没有错误消息。我可以使用其他语法来保存.txt文件,还是有人知道是什么原因导致此错误?
我从2006年开始在另一个网站上找到了一个旧的帮助文章,答案为0:
任何帮助/建议将不胜感激!
答案 0 :(得分:0)
不确定是否允许回答我自己的问题或正确的做法-但我设法使宏正常工作,并希望这会在将来对其他人有所帮助:
代替:
ActiveWorkbook.SaveAs Filename:= _
directory & Application.UserName & "_" & file_name _
, FileFormat:=xlUnicodeText, CreateBackup:=False
使用:
ThisWorkbook.SaveAs Filename:=direct & file_name, FileFormat:=xlText
不知道为什么这行得通,并且前面的代码不行,但是即使vba受密码保护,它也会保存一个.txt文件。