【发布时间】:2012-08-18 19:36:08
【问题描述】:
我使用的是 LibreOffice 3.5.4.2。我想根据各种条件更改单元格的背景颜色。作为一个最小的例子,我定义了以下宏/函数:
function bgcolor()
Dim Doc As Object
Dim Sheet As Object
Dim Cell As Object
Doc = ThisComponent
Sheet = Doc.Sheets(1)
Cell = Sheet.getCellByPosition(0, 0)
REM Cell.CellBackColor = RGB(50,60,70)
bgcolor=Cell.CellBackColor
end function
我通过在单元格中输入=BGCOLOR() 来执行该功能。正如预期的那样,该公式所在的单元格返回工作表 1 上第一个单元格 (0,0) 或 A1 的颜色值。
但是,我无法获得更改单元格A1 的背景颜色的功能。当我删除上面示例中的REM 行以设置背景颜色时,单元格背景颜色不改变。
如何在 LibreOffice 中使用函数设置单元格的背景颜色?
(我读到了关于使用“样式”,但没有进一步研究,因为我需要设置许多不同的背景颜色并且不想制作许多不同的样式。可以手动更改背景颜色而不使用样式,所以我认为可以以编程方式执行相同的操作。)
【问题讨论】:
-
我确实有同样的问题:我设置了单元格的
CellBackColor,但工作表中没有任何反应。你最终解决了你的问题吗?有什么想法吗?
标签: macros spreadsheet background-color libreoffice libreoffice-basic