4

我正在尝试以²字符串形式显示。作为一个例子,我的输出应该在一个ActiveX文本框内,并且应该是R² = 50.

我试过以下两种说法:

Selection.Characters.Text = "R&ChrW(&HB2)&" = " & variable

但这0在文本框中显示为输出。和这个:

Selection.Characters.Text = "R² = " & variable

还显示一个0.

4

3 回答 3

4

不确定您指的是哪种文本框。但是,我不确定您是否可以在用户表单的文本框中执行此操作。

您可以在工作表上的文本框。

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

如果这不是您想要的,您将需要在您的问题中提供更多信息。

编辑:在评论后发布此内容抱歉

于 2012-10-26T01:49:53.670 回答
1

没必要搞得太复杂。如果您只需要 ²,则使用 unicode 表示。

http://en.wikipedia.org/wiki/Unicode_subscripts_and_superscripts

(这就是我假设您的问题中出现 ² 的方式。)

于 2012-10-29T15:45:53.847 回答
0

我在 VBA 中创建带有随机数的方程,并将 x 平方放入 x^2。

我将每个正方形(或文本框)文本读入一个字符串。

然后我依次读取字符串中的每个字符,并记下每个字符中 ^(“帽子”)的位置。

假设帽子在位置 4、8 和 12。

然后我“砍掉”第一顶帽子 - 要上标的字符的位置现在是 4,其他帽子的位置现在是 7 和 11。我砍掉第二顶帽子,上标的字符现在是 7 和帽子已移至 10。我砍掉了最后一顶帽子 .. 上标字符现在是位置 10。

我现在依次选择每个字符并将字体更改为上标。

因此,我可以使用 ^ 用代数填充整个电子表格,然后调用一个例程来整理它。

对于像 x 到 23 这样的大幂,我构建了 x^2^3 并且上面的例程做到了。

于 2014-10-22T16:51:53.437 回答