• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ブックを指定して書式設定したい)

Excel2002で書式設定を指定する方法とエラーの対処法

このQ&Aのポイント
  • Excel2002で特定のブックの特定の範囲に書式設定を指定する方法を教えてください。
  • エラー"オブジェクトはこのプロパティ、またはメソッドをサポートしていません"が出る場合の対処法を教えてください。
  • Excel2002のバージョンでは、Workbooksオブジェクトでブックの指定ができず、エラーが発生することがあります。代わりにRangeオブジェクトを使用し、書式設定を行ってください。

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

  • ベストアンサー
回答No.2

ANo.1です。 それだけが問題じゃないみたいで、一応動く形にしてみましたが、とりあえず動いてるみたいだけど・・・ 何か問題があるようなら、誰か指摘してください。 Sub test() Workbooks("book1").Names.Add Name:="Area_書式", RefersTo:="='sheet1'!A1:Z20" 'RefersToR1C1は、R1C1形式で指定する場合です With Workbooks("book1").Sheets("sheet1").Range("Area_書式") '名前は""でくくる .HorizontalAlignment = xlCenter .Font.Size = 16 'フォントのサイズ .FormatConditions.Delete '今までの条件付き書式削除 .FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="あ" '=いらない = は Operator:=xlEqual で定義している .FormatConditions(1).Font.ColorIndex = 3 End With End Sub

rufas
質問者

お礼

ありがとうございます。 ブック内で同じ名前の定義を追加できないので、 シートの指定は要らないのかと勝手に思っていました。 回答例のようにしましたら、バッチリできました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.1

rangeは、bookのsheetのrangeで指定します。 Range(Area_書式).Select は、デフォルトのbookのデフォルトのsheetのrangeです。 デフォルトは、そのモジュールのある場所や現在アクティブのsheetによってかわるみたいです。 で、 Workbooks("book1").Range(Area_書式).Select は、sheetの指定が無いからじゃないかと思いますが・・・

すると、全ての回答が全文表示されます。

関連するQ&A