在VBA中输出分数而不是小数
Posted
技术标签:
【中文标题】在VBA中输出分数而不是小数【英文标题】:Output fraction instead of decimal in VBA 【发布时间】:2017-09-25 22:44:39 【问题描述】:我试图在 VBA 中将方程的解显示为未约简分数,但 VBA 会自动将方程计算为小数。有人知道如何将其保留为原始分数吗?
我已经尝试将整数转换为字符串然后除以它们,但 excel 仍然会自动将所有内容转换为小数。
Dim workingmegawattsint As Integer
workingmegawattsint = workingturbinesint * turbineCapacity
Dim totalmegawattsint As Integer
totalmegawattsint = totalturbinesint * turbineCapacity
ThisWorkbook.Worksheets("Sheet1").Cells(1, 1).Value = workingmegawattsint / totalmegawattsint
【问题讨论】:
***.com/questions/19007031/… 如果您只想更改自定义数字格式 VBA 不会/不会将数值存储为分数。根据数据类型,这些值存储为二进制值,存储要求为 1 到 14 个字节。结果可以显示为分数、小数或整数(或其他值),具体取决于结果的格式。如果您想使用特定的分母,您需要自定义格式您的结果,或相应的工作表单元格。 【参考方案1】:只需像字符串一样输入:
ThisWorkbook.Worksheets("Sheet1").Cells(1, 1).Value = workingmegawattsint & "/" & totalmegawattsint
可能需要使用 TEXT()
进行调整,具体取决于数字的长度/长度。
【讨论】:
以上是关于在VBA中输出分数而不是小数的主要内容,如果未能解决你的问题,请参考以下文章