Excel宏加载项-加载项的位置

Excel宏加载项-加载项的位置,excel,pdf-generation,excel-2007,vba,Excel,Pdf Generation,Excel 2007,Vba,只是想知道把这个宏放在哪里。当用户点击save时,它会使正确标记的excel文件也保存为PDF。我有一个类似的宏,没有文字问题,但就我的一生而言,我似乎不知道这个宏去了哪里 我正在用Excel2007运行Xp Sp3。我试着将它保存在.xlam中的一个模块中,保存到C:\Program Files\Microsoft Office\Office12\XLSTART,C:\Documents and Settings\username\Local Settings\Application Data

只是想知道把这个宏放在哪里。当用户点击save时,它会使正确标记的excel文件也保存为PDF。我有一个类似的宏,没有文字问题,但就我的一生而言,我似乎不知道这个宏去了哪里

我正在用Excel2007运行Xp Sp3。我试着将它保存在.xlam中的一个模块中,保存到
C:\Program Files\Microsoft Office\Office12\XLSTART
C:\Documents and Settings\username\Local Settings\Application Data\Microsoft\Office\12.0
C:\Documents and Settings\username\Templates
等,但没有乐趣

我是否遗漏了一些明显的东西(不足为奇)

子文件保存()
'
'文件保存宏
'
'
作为字符串的Dim StrFile
将StrPath设置为字符串
将StrName设置为字符串
将StrPDFName设置为字符串
StrPath=ActiveSheet.Path'获取文档路径
StrFile=ActiveSheet.Name'获取文档名
如果StrName为“”,则
MsgBox“我们有一个字符串名”
StrName=左(StrFile,(InStr(StrFile,“.”-1))
StrPDFName=StrPath+“\”+StrName+“.pdf”
如果仪表(标准文件,“\u fmpro\u temp”),则
ActiveSheet.ExportAsFixedFormat类型:=xlTypePDF,文件名:=StrPDFName_
质量:=xlQualityStandard,IncludeDocProperties:=True,IgnorePrintAreas:=False,OpenAfterPublish:=False
MsgBox StrName+“已保存。”&vbNewLine&_
“如果完成,请关闭文件,&vbNewLine&_
“并返回FileMaker以接受或放弃此版本。”_
VBA信息,“FileMaker Pro版本控制”
如果结束
如果结束
端接头

如果这是一个Excel加载项,那么如果您调用

Application.UserLibraryPath()

这将为您提供保存加载项的目录,该目录类似于:C:\Documents and Settings\Username\Application Data\Microsoft\AddIns\

加载项的位置应与加载项尝试保存用户文档的位置不同。(即一般情况下,您不会混合使用程序和文档)。 您通常希望在以下两个位置之一存储Excel加载项:;适用于pc的所有用户或个人用户。不同之处在于,单个用户的加载项通常是定制的或临时的。 有关存储加载项的位置,请参见


要存储用户的PDF文档,应使用标准的“打开文件”对话框为用户提供覆盖保存位置的选项,该对话框以用户的文档目录作为根目录。如果

在第一个
之前添加
debug.print strPath,strFile
,为什么?我想这会给你一个提示。我还尝试了
C:\Program Files\Microsoft Office\Office12\Startup
,这应该是一个值得信任的位置…@Dycey:你的问题解决了吗?呃,第一点,很好。呃,第二点-事实上不是。加载项的原因是,这是让Excel生成pdf的最简单方法,可以由另一个系统以编程方式读取-前提是另一个系统知道在哪里查找;-)因此,超出保存位置是不允许的。
Application.UserLibraryPath()