如何避免我的代码中有文件位置?

时间:2019-04-15 07:39:53

标签: excel vba

我有类似的东西

Workbooks.Open("\\xxxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\file_name.xlsm")

我希望将此代码隐藏在我的代码中,但是我不知道从哪里开始,或者我真正要求的内容是否存在。

编辑:只是为了更加清楚。我不希望人们轻易在我的代码中看到文件位置。

2 个答案:

答案 0 :(得分:1)

您可以设置值为myFilePath的环境变量\\xxxx\...\file_name.xlsm。然后,在您的代码中,使用Environ("myFilePath")访问此值。

答案 1 :(得分:0)

我认为,通过“另存为”对话框或“文件”>“高级属性”打开文件后,用户可以轻松看到文件位置。为避免这种情况,您可以考虑使用Add代替Open来作为模板打开文件:

Set wb = Workbooks.Add("\\xxxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\xxx\file_name.xlsm")

要将隐藏值添加到工作簿,可以将其添加为隐藏名称(仅执行一次代码):

 Names.Add("path", "test").Visible = False

添加后,Names("Path")将产生="test"而不是test,因此要获得该值,您可以尝试类似的操作(假设没有"在路径中):

 path = Split(Names("Path"), """")(1)

 Set wb = Workbooks.Add(path)