Libreoffice Calc Basic 如何通过代码附加 2 个小数位
Posted
技术标签:
【中文标题】Libreoffice Calc Basic 如何通过代码附加 2 个小数位【英文标题】:Libreoffice Calc Basic How to append 2 decimal places by code 【发布时间】:2021-08-12 07:51:56 【问题描述】:声明
Dim currDoc As Object
Dim currSheet As Object
Dim cell As Object
currDoc = ThisComponent
currSheet = currDoc.sheets(0)
逻辑
cell.Formula = cDbl(cell.Value)
所需的输出 100,00
【问题讨论】:
您从错误的角度解决问题。您是否希望将单元格中的数字格式化(显示)为小数点后两位? UDF(以及内置的=TEXT(...;"0.00") 函数)可以显示所需形式的数字,但将其转换为字符串,使用该值进行进一步的算术运算将非常困难。试着用简单的语言解释你想要达到的目标,我们会试着用不太复杂的语言来解释如何实现这一目标。 我知道内置函数,但我想通过代码解决它,这样我就可以将宏分配给一个按钮,每当我想格式化一个带 2 个小数位的数字时,我只是按下按钮。 @JohnSUN 是的,我想用小数点后两位数格式化单元格中的数字,但我想用基本/代码解决它。 你已经有了这个按钮。还有一个组合键。尝试 Ctrl+Shift+1 或工具栏上标有 0.0 的按钮,并带有工具提示 Format as Number。是的,你可以用代码来做,你会在 Andrew Pitonyak 的书中找到合适的格式示例。但请相信我,付出的努力并不能证明结果是合理的,离开这个冒险吧。 【参考方案1】:基于@JohnSUN 的评论: 只需为要格式化的单元格添加一行:
Cell.NumberFormat = 2
Table for all Numberformats on page 189
【讨论】:
以上是关于Libreoffice Calc Basic 如何通过代码附加 2 个小数位的主要内容,如果未能解决你的问题,请参考以下文章
从 python 执行 LibreOffice Calc Basic 宏
从 libreoffice calc basic 中的“ThisComponent.CurrentSelection”获取行号和列号
Libreoffice calc - 如何将相同的值写入范围
Libreoffice calc 宏将当前日期 + 14 天放入单元格