1

我想在字符串末尾返回适当的 Wingdings 字符,公式如下所示:

在此处输入图像描述

我可以编写哪个公式来返回单元格中常规字符串末尾显示的 Wingdings 字符?(而不是“?”字符):实心圆圈字符在公式的真实情况下返回,空心圆圈字符在错误情况下返回,因此这两个字符在绿色范围内。

4

2 回答 2

1

单独的公式无法更改部分单元格的字体。

你能做的最好的事情是有一个 VBA 函数来根据需要进行更改,你可以手动运行它,或者分配给按钮、计时器、事件等。

这个 sub 将当前活动单元格的最后一个字符更改为 Wingdings:

Sub LastLettWingding_Active()
    'changes the font for the last character of the **active** cell
    ActiveCell.Characters(Start:=Len(ActiveCell), Length:=1).Font.Name = "Wingdings"
End Sub

...这一个做同样的事情,但对当前选定的单元格或单元格范围:

Sub LastLettWingding_Selection()
    'changes the font for the last character of the all selected cells
    Dim c As Range
    For Each c In Application.Selection
        c.Characters(Start:=Len(c), Length:=1).Font.Name = "Wingdings"
    Next c
End Sub

编辑:

我没有意识到这是您尝试格式化的公式结果。

不幸的是,公式VBA 都不能更改部分公式结果的字体。

我唯一的建议是将Copy+自动化到另一个单元格,使用上述函数更改该单元格的部分格式,并可能“隐藏”原始(公式)单元Paste Values

编辑#2:

哦,是的——@TomSharpe 还认为 Unicode 符号可能是一个更简单的解决方案(包括在大多数字体中,而不是使用没有字母的单独字体)。

✂✄✇✈✉✊✌✍✎✏✐✲✴✵✵✶✶✷✷✷✸✸✹✺✺✻✼✼✽✽✾✾✿✿❀❁❂❂❂❃❃❃❆❆❆❆❈ ➶ ➷ ➸ ⌚ ⌛ ❶ ❷ ❸ ❹ ❺ ● ◌ ○ ◊ ◦ □ ┘ ⌂ ⅕⃝ Ω ℗ Ө Ӂ Φ ʘ ʘ ① ② ③ ④ ⑤ 等

单击一个空单元格,然后在Insert选项卡上单击Symbol。确保您使用的是“常规”字体(如 Calibri)并向下滚动列表。

双击您想要的,然后Insert

突出显示现在显示在公式栏中的符号,从那里复制,现在您可以将其粘贴到IF公式中。

(或者,只需将右上角的符号复制到 Excel 公式中......)

于 2017-12-09T11:18:15.933 回答
0

您可以通过在其中一种常规字体中使用 char(149) • / 小写 o 来获得一个公平的近似值

=IF(VALUE(RIGHT(C4,1))>=5,"Selected "&CHAR(149),"Selected o")
于 2017-12-09T11:50:51.120 回答