• 締切済み

EXCELデータの連続印刷マクロ

すみません。先日も質問したのですが添付のような印刷フォームに元データからデータを抽出して連続印刷をかけたいのですが印刷フォームは定型文になっており、1枚で提出になっている為、 元データが1000件近くあるので、都度印刷することが厳しい状況になっています。 印刷フォームにデータを取り込んで10件づつ印刷をするマクロかVBAをしたいのですがなかなかうまくいきません。 何か方法があれば教えて下さい。 添付のピンクの部分が元データから抽出する内容です。登録番号はすべて同じで1~10にデータを入力します。 全部で1000件近い人数分があります。

みんなの回答

  • mar00
  • ベストアンサー率36% (158/430)
回答No.3

A_No.1です。 先の回答にも書いたようにセルの位置関係がまったくわからないので 抽出先、範囲等は適当ですが 下記のような感じになると思います。 Sub Macro1() Dim Ws As Worksheet Set Ws = Worksheets(2) '元データ Worksheets(1).Select '印刷フォーム Counter = 0 myRow = 0 For i = 2 To Ws.Cells(Rows.Count, "A").End(xlUp).Row Counter = Counter + 1 myRow = myRow + 1 Range("B" & myRow) = Ws.Range("B" & i) Range("C" & myRow) = Ws.Range("C" & i) Range("D" & myRow) = Ws.Range("D" & i) Range("F" & myRow) = Ws.Range("E" & i) Range("H" & myRow) = Ws.Range("F" & i) If Counter = 10 Then ActiveSheets.PrintOut Range("B5:E14").ClearContents Counter = 0 End If Next i End Sub

すると、全ての回答が全文表示されます。
  • nonamochi
  • ベストアンサー率62% (228/365)
回答No.2

こんばんは 特定のキーワードに基づいて元データからデータを選び出し、それを印刷フォームにはめ込んで印刷をかけると言う事ですよね? 情報が足りない部分はありますが、VBAを使ってさほど複雑にならずに実現可能だと思います。 色々と確認しなければならない事もありますので、あっという間に出来ると言うわけには行かないかと思いますが、よろしければお手伝いしましょうか?

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

元データがどのように入力されていてデータが何行目から始まっているのでしょうか。 印刷フォームも1つの項目に対して複数行、複数列を使っているみたいですが 1から10まで入力されているのがA列にしても、 行、列ともにどこを使っているかががわからない(数える気にはならない)ので回答のしようがないと思います。

seisei1016
質問者

補足

確かに、元データの情報がないと分かりにくいですね。 すみません。 元データは、 契約番号 登録番号 区分 氏名(カタカナ) 保険金(千円) 保険料(円) aaaaaa 12345 A メイジタロウ 200        3000 aaaaaa 23455 B メイジハナコ 300        5000 aaaaaa 76281 C メイジゴロウ 400        4000 上記のように、別シートに元データが1000件ほど入っています。 契約番号はすべて同じなので一番上の契約データは同じものですが、下の1~10までのセルに 各データを抽出します。 ピンク色のところが抽出する情報です。

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