BERT-R 如何对用户隐藏一些功能?

BERT-R How to hide some functions from users?

是否可以隐藏 excel 中显示但存在于 functions.R 文件中的函数?目前,所有函数都作为 R 函数公开给 excel,但我希望能够 select 公开哪些函数。

BERT 公开了全局环境中的所有函数。如果你想在控制台中使用函数而不是在 Excel 中,请将它们放在单独的环境中(你可以 attach 这样它们就在全局命名空间中)。

例如,在函数文件中

visible.func <- function(){ 100 }

console.env <- new.env();
with( console.env, {

   hidden.func <- function(){ 200 }

});
attach(console.env);

然后 visible.func 将在 R 和 Excel 中可见,而 hidden.func 将仅在控制台中可见。

注意事物在不同环境中的后果。

为什么要这样做,而不是反过来(Excel 函数有一个特殊的环境)?因为主要用例是 Excel 函数,所以默认是一个。