我已将 Excel 电子表格移植到 LibreOffice 7.4(在 Windows 上)。
电子表格使用 VBA / StarBasic 在“警告”条件下将背景颜色设置为黄色,然后在条件清除时将背景颜色设置为零:
ws.Rows(rErrCell.Row).Interior.ColorIndex = 6
...
ws.Rows(rErrCell.Row).Interior.ColorIndex = 0
在 LibreOffice 上,这会清除边框。有什么办法可以阻止这种情况发生吗?或者发生这种情况后如何重新绘制边框?
(我尝试将 Interior.pattern 设置为零,并恢复 border.LineStyle,但似乎都没有任何效果。在 GUI 中,我可以将“颜色”设置为 None。)
答案1
在 excel 中,可能出于某些古老的向后兼容性原因,将颜色索引设置为零实际上会将颜色索引和模式设置为 xlNone(非零值)
在 libreoffice 中,这不起作用。但可以明确将颜色索引设置为 xlNone
当颜色索引不是 xlNone 时,可能还存在绘制边框的方法,但我还没有找到并且不需要知道。