プロが教える店舗&オフィスのセキュリティ対策術

Excel2003を使用しています。
マクロで印刷範囲を設定するコードを書きました。ページを追加するマクロを実行したときに一緒に実行するようにしているのですが、コードで指定している範囲外にデータがあるせいか、その列まで印刷範囲に設定されてしまいます。このデータは印刷範囲には入れたくないのですが、どうしたらいいでしょうか?
ちなみに、印刷範囲部分のコードは
 .PageSetup.PrintArea = Range(Cells(1, 1), Cells(j, 24))
Y1セルとZ1セルにデータが入力されています。マクロを実行すると、印刷範囲がA1:Zjに設定されます。印刷範囲はX列までに設定したいのですが、可能でしょうか?よろしくお願いします。

A 回答 (1件)

印刷範囲の指定は、


 ….PrintArea = "$A$1:$C$5"
のように、「A1形式の参照」で行わなければいけません。
A1形式の参照は、Address プロパティで得られるので、
 .PageSetup.PrintArea = Range(Cells(1, 1), Cells(j, 24)).Address
とするとよいでしょう。

Visual Basic のヘルプでは、「PrintArea プロパティ」のところに説明と address プロパティを使った使用例があります。
    • good
    • 0
この回答へのお礼

>印刷範囲の指定は、
 ….PrintArea = "$A$1:$C$5"
のように、「A1形式の参照」で行わなければいけません。
知りませんでした。。。
マクロ勉強中なので、これでまたひとつ覚えました(^^)
早速、教えていただいたとおりにコードを修正したところ、希望通りのことができました!
回答ありがとうございました。

お礼日時:2006/11/14 09:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!