アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルのシート1とシート2にそれぞれシート3からデータをVLOOKで引き込むように設定をしてあります。

印刷する際に、一括印刷や指定したものだけを印刷するボタンを作成してあるのですが、そこに『シート1のみ印刷・シート2のみ印刷、シート1と2両方印刷』が選択できるようなVBAを追加することは可能でしょうか??

シート1と2はまったく違うデータを引き込んでいます。

VBAは初心者です。
よろしくお願いします。

A 回答 (3件)

シート1の上に、コマンドボタン1つ、オプションボタンを3つを配置し、それぞれのキャプションを「シート1印刷」「シート2印刷」「シート1と2印刷」にして、コマンドボタンを押した場合のコードに



Private Sub CommandButton1_Click()
  If Sheets("Sheet1").OptionButton1.Value Then
    Sheets("Sheet1").PrintOut Copies:=1, Collate:=True
  ElseIf Sheets("Sheet1").OptionButton2.Value Then
    Sheets("Sheet2").PrintOut Copies:=1, Collate:=True
  ElseIf Sheets("Sheet1").OptionButton3.Value Then
    Sheets("Sheet1").PrintOut Copies:=1, Collate:=True
    Sheets("Sheet2").PrintOut Copies:=1, Collate:=True
  End If
End Sub

と書いておく。

これでコマンドボタンを押せば、オプションボタンで選ばれていたシートが印刷される。
    • good
    • 0
この回答へのお礼

早速ありがとうございます。

試してみたのですが、実行時エラー438
オブジェクトはこのプロパティまたはメソッドをサポートしていません。というエラーが出ます。

入力の仕方が悪いのでしょうか?

お礼日時:2008/04/11 18:20

処理したいシート数が10個以内くらいなら・・・


素人さんが操作するなら、各シートを印刷するボタン+全部を印刷するボタンの方が確実に説明の手間が省けますよ。
各ボタンを押したら「印刷済み」と表示してあげた方が使いやすいと思います。
ただ、印刷失敗と言う場合があるので、印刷済みは印刷できなくするのはやめた方がいいかと思います。
既に決まった「仕様」なら別ですが・・・

質問とは関係なくてすみません。
    • good
    • 0
この回答へのお礼

実際印刷したいシートは2枚なんです・・・

ただ使うときによって一枚必要だったり二枚必要だったりするんです・・・

お礼日時:2008/04/11 23:57

> 一括印刷や指定したものだけを印刷するボタンを作成してある



印刷したいシートタブを選択して、「指定したシート」を印刷する
マクロを実行すればよいと思うのですが。

ActiveWindow.SelectedSheets.PrintOut
    • good
    • 0
この回答へのお礼

ありがとうございます。

このエクセルは不特定多数の人が使用するので
その操作をできる人とできない人がいるので
マクロで作っておきたいのです。

お礼日時:2008/04/11 18:22

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