用Excel公式返回文本内的Wingdings字符

我想返回一个string结尾的Wingdings字符,其公式如下所示:

在这里input图像说明

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

单独一个公式不能改变单元格部分的字体。

你可以做的最好的是有一个VBAfunction,根据需要进行更改,您可以手动运行,也可以分配给button,计时器,事件等。

此子将当前活动单元格的最后一个字符更改为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都不能改变公式结果部分的字体。

我唯一的build议是将一个Copy + Paste Values自动化到一个不同的单元格,用上面的函数改变该单元格的部分格式,或许“隐藏”原来的(公式)单元格。

编辑#2:

噢,TomSharpe也认为Unicode符号可能是一个更简单的解决scheme(包含在大多数字体中,而不是使用没有字母表的单独字体)。

✂✃✄✅✆✇✈✉✊✋✍✍✎✎✎✏✲✳✴✵✷✸✹✺✼✽✽✿❀❂❃❄❅❆❇❈❊❋➮➰➱➱➲➳➳➴➵➵➵ ➶➷➸⌚⌛❶❷❸❹❺●◌○◊◦┘⌂⅕⃝Ω℗ӨӁΦʘʘ①②③④⑤等

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

双击你想要的,然后Insert

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

(或者,只需复制从右上angular的符号到Excel公式中…)

你可以通过使用字符(149)/小写字母o来得到一个合理的近似值

 =IF(VALUE(RIGHT(C4,1))>=5,"Selected "&CHAR(149),"Selected o")