同じになると思ったのに…
ワークシートが1枚存在するブックに対して、セル A1 に文字列を入力して、↓のマクロを書いて実行したところ、MsgBox に False と出ました。(セルの書式設定は、標準 のままです。)
Sub Macro1() Dim X1 As String Dim X2 As String X1 = ActiveSheet.Range("A1").Value X2 = ActiveSheet.Range("A1").Text MsgBox X1 = X2 End Sub
さて、セル A1 にどんな文字列を入力したのでしょう?("数値"ではなく、"文字列"です。)
答えは、、、
「長〜〜〜〜〜い文字列」です。
どのくらい長いかというと、Excel2007 では 8222 文字以上、Excel2003 以下では、1025 文字以上です。(下の方のバージョンは面倒なので調べてません。数式の限界と一致するはずなので、その気になればすぐ調べられますが。)
これだけ長さがあると、Text プロパティで取得したときにちょん切れます。それで同じではなくなってしまうのです。
※.Excel World の 2007年4月30日 13:30 の日記をコピーしています。
http://excel.sns.fc2.com/excel/