在 Google 表格中,我们如何获取小数英尺值并将其转换为格式正确的分数英尺和英寸?

In Google Sheets, how do we take a decimal feet value and turn it into properly formatted fractional Feet & Inches?

四处寻找,没有找到 Google Sheets 公式。

假设我们的值为 3.6875 英尺。我们可以使用数字格式#??/??,但它会给我们一个以英尺为单位的小数值(在本例中,3 11/16 英尺)。

我们如何“抓住”11/16 并将其乘以 12 以获得英寸值 (8.25),然后是真正棘手的部分,我们如何将整个辣酱玉米饼馅显示为 3 '8¹/⁴"(是,包括上标)?

A1= 3.6875

B1=INT(A1)&"'-"&TRIM(TEXT(ROUND(MOD(A1,1)*12*16,0)/16,"# ??/??")&"""")

输出: 3'-8 1/4 "

更新:

你可以有一个table来搜索上标

获取上标的思路:如上输出(3'-8 1/4"):提取分数(1/4),在table中搜索等价的上标(¹/⁴ ), 然后替换它 (3'-8 ¹/⁴"):

所以基本上我们需要:

  • 正则表达式
  • VLOOKUP
  • REGEXREPLACE

电子表格演示HERE

 =arrayformula(
  if(len(A2:A),INT(A2:A)&"'-             
     "&REGEXREPLACE(TRIM(TEXT(ROUND(MOD(A2:A,1)*12*16,0)/16,"#??/??")&""""),
        "\d{1}\/\d+",
            VLOOKUP(IFNA(
    REGEXEXTRACT(TRIM(TEXT(ROUND(MOD(A2:A,1)*12*16,0)/16,"# ??/??")&""""),
    "\d{1}\/\d+"),
    "0/0"),
            TABLE!A:B,2,0)),""))