Excel-VBA UDF:保留2个值但仅显示1

时间:2017-03-06 15:44:17

标签: excel-vba vba excel

我写了一个用户定义的函数,用于显示上标和&下标数字(以Unicode格式提供),分母不超过用户想要的数量。我基本上可以用“=分数(PI(),30)”将π变成²²/,,因为在分母小于或等于30的情况下,没有其他分数更接近π。

然后我也想写一个InvFraction函数,从Fraction函数生成的字符串到实际数字。但是,你可以想象,这个值不再是π,而是3.142857 ......(即²/₇)。所以我推迟了写作,直到我消除了追逐鬼魂的感觉,我感觉到了。

我看到可以让Fraction函数生成一个size-2数组值,然后通过index函数让用户决定显示哪一个,或者输入Fraction函数作为覆盖2个单元格的数组函数。从我的角度来看,这两个都不是理想的,第一个选项,因为第二个值,可能是π,通过索引选择丢失,不再可检索,第二个选项,因为它强制两个单元格包含数据(虽然我想我可能最终会和它一起生活。)

我还想过使用包含分数的字符串值和原始输入的double值的用户定义类型,但我注意到它们在实际工作表中不起作用,然后在那里非正式地确认了信息:{{ 3}}

任何人都会知道如何解决这个问题?不管怎样,谢谢您花时间阅读。

编辑:简单地说,如果我按照我所拥有的工具和想法设想 InvFraction 功能,我只能设法拥有它“ = InvFraction(分数(PI(),30))”等于3.142857 ......(22除以7),但我更愿意生成3.14159265 ...(π)。

0 个答案:

没有答案