【问题标题】:LibreOffice (Calc) VBA SUM of Cells by indexLibreOffice (Calc) VBA 单元格总和(按索引)
【发布时间】:2018-01-24 13:46:44
【问题描述】:

是否有可能不按 Cellnames (A2:A6) 而是按 CellIndex 使用 SUM()? 像 =SUM(Sheet.getCellByPosition(0,1):Sheet.getCellByPosition(5,1))

在 Excel VBA 中它的单元格 (0,1) 但在 Calc 中如何?

【问题讨论】:

  • 不清楚您询问的是电子表格公式还是宏。我的问题都回答了。

标签: openoffice-calc


【解决方案1】:

这是一个 Calc 电子表格公式。文档:ADDRESS, INDIRECT, OFFSET, INDEX.

=SUM(INDIRECT(ADDRESS(2;1)&":"&ADDRESS(6;1)))

问题还提到了 VBA,用于 MS Office 中的宏。所以这里有一个 LO Basic 宏,基于 XCellRangehttps://ask.libreoffice.org/en/question/88539/from-cell-range-to-array/

Function RangeSum(nLeft, nTop, nRight, nBottom)
    oSheet = ThisComponent.CurrentController.ActiveSheet
    oCellRange = oSheet.getCellRangeByPosition(nLeft, nTop, nRight, nBottom)
    svc = createUnoService("com.sun.star.sheet.FunctionAccess")
    RangeSum = svc.callFunction("SUM", Array(oCellRange.Data))
End Function

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多