• 締切済み

エクセル マクロ 方法

以下のようなマクロを作りましたが、帳票を印刷すると1枚印刷されます。 ですが、この帳票がA5サイズの決まりがあり、かつプリンタがA4しか用紙を入れることができないので、 そのため、一度にA5サイズの帳票を2枚合わせた形で印刷をさせたいと考えています。 A4用紙に左側(名簿の1番目)右側(名簿の2番目) 次も、名簿の3番目・4番目と連続印刷をしたいのですが、どのようにすれば良いのでしょうか。 勉強不足で申し訳ございませんが、ご指南くださいますようお願いいたします。 Sub 帳票印刷() Dim LastRow As Long Dim i As Long Dim myNo As Variant With Worksheets("名簿") LastRow = .Cells(Application.Rows.Count, "A").End(xlUp).Row For i = 2 To LastRow myNo = .Range("A" & i).Value With Worksheets("印刷用") .Range("C4").Value = myNo .PrintPreview .PrintOut Copies:=1, Collate:=True   End With Next i End With End Sub

みんなの回答

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

>myNo1 の部分で、『変数の定義されていません』と >メッセージが出てしまいます。 Dim myNo As Variant も Dim myNo1 As Variant Dim myNo2 As Variant となります。 ただ、本当に myNoにVariant型が必要? とちょっと思うのですが。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

シート 印刷用に 用紙2枚分を配置します。 For i = 2 To LastRow Step 2 myNo1 = .Range("A" & i).Value myNo2 = .Range("A" & i + 1).Value With Worksheets("印刷用") .Range("C4").Value = myNo1 .Range("K4").Value = myNo2 ・・・ .Range("K4")は適当なセルです。

waki1982
質問者

お礼

ありがとうございます。 早速試してみましたが、私のやり方が悪いようで、 myNo1 の部分で、『変数の定義されていません』と メッセージが出てしまいます。 すいません。本当に勉強不足で 教えていただけませんでしょうか? よろしくお願いいたします。

関連するQ&A