【问题标题】:Define global variables定义全局变量
【发布时间】:2017-11-22 10:21:04
【问题描述】:

我正在尝试在 LibreOffice Calc 中测试一些算法,并且我希望在所有单元格/工作表中都可以看到一些全局变量。我在网上搜了一下,看到的所有帖子都是那么的神秘和冗长!

有哪些简单的说明可以告诉我如何做到这一点?

【问题讨论】:

    标签: global-variables libreoffice-calc libreoffice-basic


    【解决方案1】:

    转到工作表命名范围和表达式定义。将名称设置为“MyVar1”,将表达式设置为 5。或者对于字符串,使用引号,如 "foo"。然后按添加

    现在在单元格中输入=MyVar1 * 2

    【讨论】:

    • 这实际上比其他答案容易得多,谢谢!
    • 要添加到 Jim 的答案中,您可以通过选择单元格并将所需的变量名称输入到“名称框”中来快速将其定义为变量(例如 Jim 的第二个屏幕截图中的“A1” )
    【解决方案2】:

    一种策略是将您需要的全局变量保存在一张纸上:

    选择您要在计算中引用的单元格,然后在左上角的“名称框”中输入变量名称,通常显示单元格列行。

    您可以在项目的其他地方引用上一步中的变量名称:

    【讨论】:

      【解决方案3】:

      使用用户定义的函数应该是定义常量的最灵活的解决方案。在下文中,我假设当前的 Calc 电子表格文件名为 test1.ods。按照以下步骤将其替换为真实文件名:

      1. 在 Calc 中,打开菜单 工具组织宏LibreOffice Basic

      2. 在左侧,选择当前文档test1.ods,然后点击New...

      3. 点击OK(Module1就OK了)。

        现在,Basic IDE 应该出现了:

      4. End Sub下方,输入以下BASIC代码:

         Function Var1()
             Var1 = "foo"
         End Function
        
         Function Var2()
             Var2 = 42
         End Function
        

        IDE 应如下所示:

        [![Enter image description here][5]][5]
        
      5. Ctrl + S 保存。

      这样,您就定义了两个全局常量(准确地说:两个返回常量值的自定义函数)。现在,我们将在您的电子表格中使用它们。切换到 LibreOffice Calc 的主窗口,文件为test1.ods,选择一个空单元格,输入以下公式:

      =Var1()
      

      LibreOffice 将显示您的自定义 Var1() 公式的返回值,一个简单的字符串。如果你的常数是一个数字,你可以用它来计算。选择另一个空单元格,然后输入:

      =Var2() * 2
      

      LibreOffice 将显示结果84

      【讨论】:

      • 我喜欢这个想法,尽管有一种更简单的方法可以避免使用宏。
      • @JimK 我同意 - 我不知道您可以明确设置命名范围的范围。 +1 为您的解决方案,我会推荐它作为接受的答案。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-01
      • 2020-04-04
      • 2014-05-12
      • 2019-04-08
      相关资源
      最近更新 更多