gpt4 book ai didi

windows - 在运行 Excel 之前动态设置环境变量的正确方法是什么?

转载 作者:可可西里 更新时间:2023-11-01 11:40:51 27 4
gpt4 key购买 nike

我有一堆由环境变量配置的 Excel 插件。通常这些是在系统范围的基础上在注册表中设置的。当我想非动态地更改值时,我会去:

my-computer -> properties -> advanced -> environment variables -> System variables

我已经验证,当我在此处设置环境变量时,它似乎完全按照我们预期的那样被 Excel 拾取。

但是,我还需要动态设置环境变量,例如让我的 Excel 插件使用替代配置文件。我希望能够做这样的事情:

set MYADDIN_CONFIG_FILE=path_to_config.xml
<path to excel>\excel.exe

不幸的是,当我这样做时,好像完全忽略了对环境变量的更改。我猜测需要以某种方式告知 Excel 注意已从命令行设置的环境变量?

我已经使用 VB“Env”函数验证了上述技术失败。

仅供引用:Windows XP 32 位上的 Excel 2003。

最佳答案

我做了一个简单的测试(Excel 2003 SP2 on Windows XP Pro SP3)。

我写了一个VBA函数:

Public Function GetEnv(name As String) As String
GetEnv = Environ(name)
End Function

然后我输入:

=GetEnv("TEMP")
=GetEnv("JAVA_HOME")
=GetEnv("TestSO")

后者未定义,单元格保持为空。

现在,我转到命令行并输入:

set TestSO=This is a test for SO
"C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE"

然后我加载上一张表。呃,结果没有改变,即使在按下 F9 之后,但如果我点击公式并按下 Return,结果会更新......(我对 Excel/VBA 的使用有点生疏......)
无论如何,它确实在运行 Excel 之前在当前控制台中即时显示正确的环境变量设置。正如预期的那样(常见的 Windows 行为)。

关于windows - 在运行 Excel 之前动态设置环境变量的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1519898/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com