试图用VBA代码编写(小数字)的权力

我不知道如何写在Excel中的单元格的权力。 我可以用chr(185),chr(178)和chr(179)来显示1,2和3的功率,但是我不能做任何其他的数字。

你有两个select:

  1. 使用Unicode字符
  2. 使用单元格格式

我认为格式化方法是正常使用的首选方法,因为它非常灵活(例如,容易上标整个代数expression式如x^(n-1) )。

但是,如果您最终导出为CSV或其他格式,则Excel格式化将不会继续,在这种情况下,您应该使用方法1.此外,使用此方法允许在公式中传递上标字符,而实际的单元格格式不能。

使用Unicode字符

使用ChrW(charcode)函数。

charcode可以是unicode字符的十进制或hex数字。

字符是:

 SuperscriptHex Dec 0 2070 8304 1 00B9 185 2 00B2 178 3 00B3 179 4 2074 8308 5 2075 8309 6 2076 8310 7 2077 8311 8 2078 8312 9 2079 8313 

(引用unicode表: http : //en.wikipedia.org/wiki/Unicode_subscripts_and_superscripts )

您可以使用&H作为文字,指示ChrW(&H2077)的字符应该被解释为hex,如ChrW(&H2077)

使用单元格格式

一个Range对象有一个Characters属性,它返回一个Characters对象,允许不同的Font对象到达string的不同部分。 通常, Range.Font应用于整个文本。

请注意, Font也有很多其他属性,你可以应用对子string,如粗体/大小等

例子:

 'Method 1 - Unicode ActiveCell.Value = "x" & ChrW(&H2079) 'Method 2 - Formatting With ActiveCell.Offset(1, 0) .Value = "x9" .Characters(2, 1).Font.Superscript = True '2,1 is a substring from 2nd char for 1 char End With