実証コード
平方メートルについて作成します
Excel 2010以降ですたぶん。これは後から書きます。
Sub MakeSuqreMeter()
Range("A1:C5").Clear
Range("A1").Select
ActiveCell.FormulaR1C1 = "m" & ChrW(&HB2) '本当は00B2だが00は自動的にカットされる
Range("B1").Value = "ラテン補助文字の2。コードは&H00B2。単体でも文字として扱われる。もともとのExcelはこちらを使用していたらしい。"
Range("A2").Select
ActiveCell.FormulaR1C1 = ChrW(&H33A1)
Range("B2").Value = "記号としての平方メートル"
Range("A3").Select
ActiveCell.FormulaR1C1 = "m2"
With ActiveCell.Characters(Start:=2, Length:=1).Font
.Name = "MS Pゴシック"
.FontStyle = "標準"
.Size = 11
.Superscript = True
End With
Range("B3").Value = "上付き文字に変換。このときの文字コードは&H0032。単体では数字。また行の高さが自動的に拡大する。"
End Sub
3つある理由
一番古いものはラテン1補助文字か
ラテン1補助ユニコード00B2 名前SuperScript 2
の上付き文字の2が存在する
10の3乗の入力方法について
IME2002、OfficeXP以降なら
「挿入」「記号と特殊文字」でコード体系を「Unicode(16進)」にして
種類「ラテン1補助」と「上付き/下付きの文字」にある数字を挿入する。
上記はUnicodeにしないと出てきませんのでご注意ください。
Excel2003の使用で特殊文字の上付き文字
というのがあるので、こちらが古いもののようだ。
書式設定で上付き文字にする
これは数字なので、単体では数字になる。コードは&H0032
少なくともExcel2003からできる。
CJK文字の単位記号
セルの書式設定
2の3乗のような上付き表示 (tp0031)
平方メートルや立方メートルなどの特殊記号を入力する方法
この解説はWordだがExcelでも使える。CJK 互換文字で単位記号として挿入する。このコードは&H33A1。
3つのコードを取り扱えるのは
おそらく完全にユニコードに移行したWindows7+Office2010以降でないと確実に動かせない。逆にラテン1補助はXpでも上付き文字が表示できる。逆にいうとラテン1補助が一番互換性が高いのかもしれない。
検索・痴漢で要注意
また、検索・置換でも実はこの文字コードの違いで検索・置換が失敗するので、意識しておかないと単位の上付き数字が検索・置換できないときが発生する。