• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA分かる方教えて下さい)

VBA分かる方教えて下さい

このQ&Aのポイント
  • VBA勉強中の方へ、A1とB1のセルの値をクリアする方法について教えてください。
  • Excel2003を使用している方のためのVBAの学習中の質問です。
  • KAISYAMEIを使ってA1とB1セルの値をクリアする方法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

おっしゃることがよく理解できないのですが、 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

honey9219
質問者

お礼

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

関連するQ&A