我正在尝试让
²
显示在字符串中。例如,我的输出应该位于 ActiveX
文本框内,并且应该显示为 R² = 50
。
我尝试过以下两种说法:
Selection.Characters.Text = "R&ChrW(&HB2)&" = " & variable
但这会在文本框中显示
0
作为输出。还有这个:
Selection.Characters.Text = "R² = " & variable
还显示
0
。
不确定您指的是哪种文本框。但是,我不确定您是否可以在用户表单上的文本框中执行此操作。
您可以在工作表上添加文本框。
Sheets("Sheet1").Shapes("TextBox 1").TextFrame2.TextRange.Text = "R2=" & variable
Sheets("Sheet1").Shapes("TextBox 1").TextFrame2.TextRange.Characters(2, 1).Font.Superscript = msoTrue
Excel 单元格也是如此
Sheets("Sheet1").Range("A1").Characters(2, 1).Font.Superscript = True
如果这不是您想要的,您将需要在问题中提供更多信息。
编辑:在评论后发布此内容抱歉
没必要搞得太复杂。如果您需要的只是 ²,则使用 unicode 表示形式。
http://en.wikipedia.org/wiki/Unicode_subscripts_and_superscripts
(这就是我假设您在问题中出现 ² 的方式。)
我在 VBA 中使用随机数创建方程,并将 x 平方放入 x^2。
我将每个正方形(或文本框)文本读入字符串中。
然后我依次读取字符串中的每个字符,并记下每个字符中 ^(“帽子”)的位置。
假设帽子位于位置 4、8 和 12。
然后我“砍掉”第一顶帽子 - 要上标的字符的位置现在是 4,其他帽子的位置现在是 7 和 11。 我砍掉了第二顶帽子,上标的字符现在位于 7,帽子已移至 10。 我砍掉最后一顶帽子..上标字符现在位于位置 10。
我现在依次选择每个字符并将字体更改为上标。
因此,我可以使用 ^ 用代数填充整个电子表格,然后调用例程来整理它。
对于像 x 到 23 这样的大幂,我构建 x^2^3 并且上面的例程可以做到这一点。
方形符号是u00b2。 所以,Python 中是这样写的: print('R\u00b2 =',50)