qua*_*ant 1 arrays basic openoffice.org
我正在阅读有关数组的 OpenOffice文档,它似乎Calc能够像Excel.
为了测试这一点,我创建了一个应该返回数组的简单函数{1, 2, 3}:
Function Test()
Dim Test(3) As Variant
Test(1) = 1
Test(2) = 2
Test(3) = 3
End Function
Run Code Online (Sandbox Code Playgroud)
当我填充一个单元格=Test()并按下时,Ctrl+Shift+Enter我只会得到一个单元格3。1和在哪里2?我究竟做错了什么?
我在跑OpenOffice 4.1.1。
函数返回类型的标注必须在语句内完成Function。如果函数应返回一个数组,则其尺寸必须为Variant。starbasic 无法直接将函数尺寸标注为数组类型。数组本身可以在函数体内单独创建,然后作为返回值分配给函数。
就像这样:
Function Test() as Variant
Dim arr_Test(1 to 3) As Integer
arr_Test(1) = 1
arr_Test(2) = 2
arr_Test(3) = 3
Test = arr_Test
End Function
Run Code Online (Sandbox Code Playgroud)
Array或者,如果您希望它更短,您可以使用返回Variant包含数组的内置函数。
就像这样:
Function Test2() as Variant
Test2 = Array(1,2,3)
End Function
Run Code Online (Sandbox Code Playgroud)
openoffice-/libreoffice-/-BASIC 编程文档:
https://wiki.openoffice.org/wiki/Documentation/BASIC_Guide
https://wiki.openoffice.org/wiki/Documentation/DevGuide/OpenOffice.org_Developers_Guide -> https://wiki.openoffice.org/wiki/Documentation/DevGuide/Basic/OpenOffice.org_Basic
但两者都没有完全参考 BASIC 基础知识;-) 例如所有内置函数的参考。
https://help.libreoffice.org/Basic/Basic_Help -> https://help.libreoffice.org/Basic/Run-Time_Functions 似乎几乎完全。
| 归档时间: |
|
| 查看次数: |
5069 次 |
| 最近记录: |