おっしゃることがよく理解できないのですが、
Dim KAISYAMEI as String
と宣言したのならKAISYAMEI は文字列変数です。
多分、KAISYAMEI = Range("A1").Valueのように文字列を代入しているのだと思いますが、
KAISYAMEI = "" として、変数の中をクリアすることはできても、A1とB1セルの値をクリアすることはできません。
Sub test01()
Dim KAISYAMEI As String
KAISYAMEI = Range("A1").Value
MsgBox "KAISYAMEI=" & KAISYAMEI
KAISYAMEI = ""
MsgBox "KAISYAMEI=" & KAISYAMEI
End Sub
Dim KAISYAMEI As Range
と、Rangeとして宣言したのならKAISYAMEI はRange("A1:B1")を代入された変数です。
その場合なら、KAISYAMEI.ClearContentsとしてA1とB1セルの値をクリアできます。
Sub test02()
Dim KAISYAMEI As Range
Set KAISYAMEI = Range("A1:B1")
MsgBox "KAISYAMEIのアドレス=" & KAISYAMEI.Address
MsgBox "KAISYAMEIのVALUE=" & KAISYAMEI.Cells(1).Value
KAISYAMEI.ClearContents
MsgBox "KAISYAMEIのVALUE=" & KAISYAMEI.Cells(1).Value
End Sub
お礼
早速の回答ありがとうございます。 説明が不十分で申し訳ありませんでした。 >Dim KAISYAMEI as String と宣言したのならKAISYAMEI は文字列変数です。 多分、KAISYAMEI = Range("A1").Valueのように文字列を代入しているのだと思いますが、KAISYAMEI = "" として、 変数の中をクリアすることはできても、A1とB1セルの値をクリアすることはできません。 ご指摘の通りの記述をしていた為、上手くいかなかったようです。 test02を参考にさせて頂いたところ、思ったようなことが出来ました。 大変勉強になりました。ありがとうございました。 機会がありましたら、またよろしくお願い致します。