• ベストアンサー

オブジェクト変数にInteriorオブジェクトなどは代入できますか?

オブジェクト変数にInteriorオブジェクトやBordersオブジェクトを代入することってできますでしょうか? 例えば変数"HT"にInteriorオブジェクトを代入して、 Range("C3").HT.colerindex=7 という設定はできるのでしょうか?

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

  • ベストアンサー
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.1

出来ますが、構文が違います こんなことがやりたいのでは? Sub test() Dim HT As Object Set HT = Range("a1") HT.Interior.ColorIndex = 3 Set HT = Range("a2").Interior HT.ColorIndex = 3 Set HT = Nothing With Range("B2").Borders(xlBottom) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = 3 End With End Sub 違っていたら、パスしてください

oppaw
質問者

お礼

Set HT = Range("a2").Interior HT.ColorIndex = 3 range.interiorというふうにセットにして代入すればよかったのですね。 ありがとうございました。

その他の回答 (1)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 時々、初心者の方から、そのような質問を受けます。入力の手間を考えて、一種のオートコレクトの意味合いがあるのだと思います。 そのような入門者さんたちのために、通常のオプション設定で、インテリセンスが使えます。 インテリセンスというのは、初心者のための入力補助機能です。Rangeオブジェクトの後に、「.(ピリオド)」を付けると、プロパティ・メソッドの一覧が出てきますから、そこから選んで入力するのです。(出てこない時があるのは、親オブジェクトがサポートされていないところにあるからです) オブジェクトとメソッド、プロパティの基本的な役割があります。そして、新たにインスタンスから名称は作ることは可能でも、既存のもののプロパティ名の変更や変数に代入することはできません。 コツコツと入力の手間を惜しまず、キーボードを叩いて覚えていくしかありません。

oppaw
質問者

お礼

ありがとうございました。

関連するQ&A

専門家に質問してみよう