[[20100112183436]] 『差し込み印刷で印刷範囲が変更する場合のVBA』(kamon) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『差し込み印刷で印刷範囲が変更する場合のVBA』(kamon)excel2002

以下のようなオーソドックスな方法を使って差し込み印刷をしています。

    For 番号 = 1 To 10
        Sheets("A").Range("E74").Value = 番号
        Sheets("A").PrintOut
    Next 番号

印刷されるものは公文書で,宛先に対応して表ができあがり,それをプリントアウトします。ただし,宛先によって表の行数が変わってくるため,印刷範囲を指定しないで印刷すると余分なところまでどんどん印刷されます。

宛先にはあらかじめいくつの行数が必要なのかはカウントして対の表にしてあります。(つまりA社には6行,B社には15行とか・・・)これを利用して印刷範囲の設定ができそうなのですが,私の力を超えています。

おわかりの方,教えて下さい。


 印刷範囲の設定をマクロ記録すると(A1:G15)
 ActiveSheet.PageSetup.PrintArea = "$A$1:$G$15"
 となります。
 この場合は15行目までですが、この15を必要な行数にします。
(たるむ)

行がその都度変更できる方法を希望しています。

 Dim LastRow as Long
 LastRow = 15
 ActiveSheet.PageSetup.PrintArea = "$A$1:$G$" & LastRow
 変数を使用してください。
(たるむ)


たるむさんのコードでは LastRow = 15 で固定されてしまいます。

当方の説明不足で申し訳ありません。

A社へのプリントアウトは6行目までを選択して、印刷範囲を設定する。
B社へのプリントアウトは15行目までを選択して、印刷を設定する。

という具合に、印刷範囲が変更する場合を教えていただければと思っています。

(kamon)


 たるむさんが書いて居られる LastRow の所へ
 >宛先にはあらかじめいくつの行数が必要なのかはカウントして対の表にしてあります。
 このデータを利用すれば良いのでは?

 何処にどの様に対になって表にしてあるのか分かりませんが。

 どのシートのどの位置にどの様なデータが有って
 どの様な数式を使ってどの様に印刷データを作っているのか
 詳しく説明されてはどうでしょう?

 (HANA)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.