- ベストアンサー
エクセル ボタンのVBA
印刷のボタンを作成しました。 原本シートに書き込んで終了した時に保存ボタンを押したら シート名を記載して保存するVBAが一個あります それとは別に印刷ボタンを作成したいのですが 原本シートの表には未記入の場所には条件式でセルに色を つける条件を付けてます。 印刷ボタンを押した時 全部のセルの色を白色に戻し指定した範囲の部分を印刷するボタンを作れないでしょうか? 例 A1:K73まで印刷するなど
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Sub Example() With Sheets("Sheet1") .Cells.FormatConditions.Delete .PageSetup.PrintArea = Range("A1:K73").Address .PrintOut End With End Sub こんな感じでしょうか。
その他の回答 (1)
- chie65536(@chie65535)
- ベストアンサー率44% (8740/19838)
>印刷前色あり→印刷ボタンを押す→セルの色は白に戻り印刷 >→印刷後は元も色ありに戻したいのですが・・ >そんなマクロあったら教えてください そんなマクロは存在しません。「印刷後は元の色ありに戻す」は不可能です。 ですので、やるとしたら、条件付書式を書き換えて「印刷範囲の外にある特定のセルに『印刷中』と入っていたら色無しにして、『印刷中』と入ってなかったら、今までの条件付き書式を使う」というようにして、印刷ボタンを押したら、その「特定のセル」に「印刷中」と書き込んで、印刷して、印刷が終わったら、その「特定のセル」をクリアする、という処理が必要です。 「条件付書式」は「複数の条件を指定する事が可能」です。 例えば、1番目の「条件付書式」が「M1セルの中身が"印刷中"であれば、白い背景に黒い文字で」になっていて、2番目の「条件付書式」が「セルが空白なら赤い背景に白い文字で」になっている、というように条件付書式を書きます。 条件付書式は「上にある方の条件が成り立ったら、下にある方は無視される」ようになっています。 なので、上記のように「条件を2つ書く」と「M1セルに"印刷中"と書き込んだ瞬間に、条件付書式したセルは、一斉に「白い背景に黒い文字」になります。 たぶん「印刷時のみ条件付書式を無かった事にする」のは「この方法しかない」と思います。
お礼
ありがとうございます 検討してみます
補足
ありがとうございます 色が消えました しかし条件式まで全部消えてしまったため 印刷後は色が戻りません 説明不足で申し訳ないのですが 印刷前色あり→印刷ボタンを押す→セルの色は白に戻り印刷 →印刷後は元も色ありに戻したいのですが・・ そんなマクロあったら教えてください