• ベストアンサー

エクセルのマクロで別のSheetを印刷

Sheet3にデータが次のようにあります   A   B    C 1 100   りんご  赤 2 150   ぶどう  紫 3 120   かき   青 Sheet2のA-1に数字を入れるとSheet3の行を以下のように 表示させるようにしています *1を入れた場合  A   B    C   D 1 1   100   りんご  赤 *2を入れた場合  A   B    C   D 1 1   150   ぶどう  紫 そのSheet2をSheet1に反映させ、Sheet1を印刷します ●以上のように設定している場合Sheet2でマクロを組んで、1だけ入れた場合の印刷、1から3までを入れた場合の印刷(3種類が印刷れる)などを指定できる方法はないでしょうか? どなたか、よろしくお願いします。    

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

>Sheet1に反映させ、Sheet1を印刷します. Sheet1はどういう様式ですか ーー これもやりたいことだけ書いて、マクロの記録も勉強していない風な質問。 私がいままで請求書などで回答した方式が使えれば下記になる。 関数利用の折衷式です。 例データ 100 りんご 赤 150 ぶどう 紫 120 かき 青 Sheet1の様式を 納品表 価格 100 商品 りんご 種別 赤 とする。 100のところは =INDIRECT("sheet3!A"&G1) りんごのところは =INDIRECT("sheet3!B"&G1) 種別のところは =INDIRECT("sheet3!C"&G1) 印刷域外のG1に1と入れたところが上記の状態。 標準モジュールに Sub test01() d = Worksheets("Sheet3").Range("A65536").End(xlUp).Row ' MsgBox d For i = 1 To d Worksheets("Sheet1").Range("G1") = i Worksheets("Sheet1").Range("A1:F7").PrintOut Next i End Sub

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

その他の回答 (2)

  • pauNed
  • ベストアンサー率74% (129/173)
回答No.2

ぁ >Sheet2の例えばF1に1、G1に3を入れた場合は、1から3を印刷。 でしたか。 Sub try2()   Dim i As Long      With Sheets("sheet2")     For i = .Range("F1").Value To .Range("G1").Value       .Range("A1").Value = i       Sheets("sheet1").PrintOut preview:=True     Next i   End With End Sub こんな感じです。

すると、全ての回答が全文表示されます。
  • pauNed
  • ベストアンサー率74% (129/173)
回答No.1

こんにちは。 >そのSheet2をSheet1に反映させ これは、関数などですでに設定できているのですね? 『Sheet2でマクロを組んで』 ...の部分が少し不明ですが、例えば以下のような事でしょうか? Sub try()   Dim x As Variant   Dim i As Long   x = Application.InputBox("NO?(ALL=4)", Type:=1)   If VarType(x) = vbBoolean Then Exit Sub   Select Case x     Case 4       For i = 1 To 3         Call prt(i)       Next i     Case 1, 2, 3       Call prt(CLng(x))   End Select End Sub Sub prt(ByVal n As Long)   Sheets("sheet2").Range("A1").Value = n   Sheets("sheet1").PrintOut preview:=True '確認できたらpreview:=True不要 End Sub

ponpa22
質問者

補足

表現が悪くすみません。 Sheet2の例えばF1に1、G1に3を入れた場合は、1から3を印刷。 F1に1、G1も1の場合は1のみを印刷するようにしたいのですが。 よろしくお願いします。

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

関連するQ&A