• 締切済み

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までのセルに 各データを抽出します。 ピンク色のところが抽出する情報です。

関連するQ&A

  • Excel VBかマクロでデータを印刷する

    印刷用の定型文に別シートのデータを必要部分だけ抽出して、印刷をしたいです。 定型文には、10件分のデータが入れられますが、元データは1000件近くあるので、コピペで 印刷は厳しいので、VBかマクロで対応したいす。 定型文には下記の項目 会社名   部署   品名    品数   金額 ○○会社  管理部  保険A    1    5000 元データ 会社名   部署   担当者名  住所   電話番号  品名  品数  金額 ○○会社  管理部  山田     東京都  03-    保険A  1   5000 上記のようなデータが1000件分入っています。 そのデータを定型文の印刷用のフォームに抽出して、1000件全部印刷をかけたいです。 

  • エクセルのマクロで連続印刷を

    いつもお世話になります。 エクセルで成績表を作り、マクロで連続印刷ができるようにしています。クラスごとの人数が違うので、マクロには、各クラスごとに、1~○番までと、いちいち入力してあります。 ですが、途中から印刷したい場合もあるということで、 ○~□まで (○、□には任意の数を入れることができる)と変えたいと思います。 ○、□に入れる数を、シートのどこかのセルに入力することで、マクロが自動的に変わる方法をご存じないですか? どなたか、よろしくお願いします。

  • AccessのデータをExcelテンプレートに出力・自動印刷したい

    Access2000を使っています。 クエリで必要なデータだけをフォーム上に抽出した後、フォーム上のコマンドボタンをクリックすることで、Excel2000で作成したテンプレートに出力・自動印刷したいのですがこんなことできますか?できるのでしたら方法を教えてください。マクロでもいいのですが、できればVBAのコードで教えていただければ助かります。 よろしくお願いします。

  • エクセルでの印刷・・・

    こんにちは。 今、エクセルのデータを同じエクセルで作った表に順番に表示させて印刷するマクロを組もうとしています。 ただ、1枚の紙に10件ごとにしたいと思っています。 今まで連続印刷のマクロを組んだのは1枚に対して1件の印刷マクロを組んだことは あるのですが・・・ 詳しい方教えてください よろしくお願いします。

  • エクセル 伝票、等を連続印刷

    初心者です。エクセルでデータ30件を別シートの伝票等に連続で印刷する方法で困ってます。 ます、データが30件あって(全て支払日時、金額、支払先が異なる) それを伝票に1件1件連続印刷したいのでが、(マクロを使って) その方法はデータ1から30までを上から順に印刷して合計30枚の伝票を作りたいのです。(支払日、支払先 金額)を伝票のシートの下のほうに貼り付けて(印刷しても文字が隠れるように印刷範囲を指定して)その数値を伝票の各項目と=で結んであります。1番目のデータを印刷したら その次に 2番目、3番目と 最後30番目まで続くように自動で設定したいのです。 私が本をみてやってみたら、2番目、3番目と連続してプリントアウトできません 1枚で終わってしまいます。 初心者ですが よい方法を教えて下さい。 もしかしたら、こんな感じですか? Worksheets(2).Range("A2:A30").PrintOut

  • Excelで連続印刷をするマクロ

    Excelでデータベース的な使い方をしています。 「データ」シートにたくさんのデータがあり, 「レポート」シートのA1セルに入力した数字に該当するデータをVLOOKUP関数で読み込んでいます。 それを連続印刷するときに, 現在は For n = 1 To 135 Range("A1").Select ActiveCell.FormulaR1C1 = n ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Next n End Sub というマクロで実行させています。 (ちなみにマクロの知識がほとんどなく 「新しいマクロの記録」を利用して作ったため,ほとんど意味は分かっていませんが・・・) このマクロでも印刷できるのですが, このままだとデータが 1 ~ 135に固定されてしまいますよね。 実際はデータ数が変動するので,そのたびにマクロの数字を変えています。 そこで考えているのが 新たに「設定」シートを作成して そこのiとjのセルに数字を入力することで,自動的に マクロが n = (iに入力した数字) To (jに入力した数字) となるようにした方が便利だと考えています。 あまりマクロについての知識がないくせに ほんのちょっとの工夫でできるような気がして・・・ あれこれ試してみたけどできません。 できれば今のマクロを根本的に変えるのではなくて 少しの変更とか追加とかでできるようにしたいのですが可能でしょうか? ぜひ 教えてください。よろしくお願いします。

  • <EXCELでマクロを使って連続で印刷しようとすると2枚目でエラーにな

    <EXCELでマクロを使って連続で印刷しようとすると2枚目でエラーになる。> EXCELでマクロを使って連続で印刷しようとしています。 1枚目は良いのですが、2枚目でエラーになってしまいます。 EXCEL自体が落ちてしまいます。 エラー400やエラー10004が出たりします。 アプリケーション定義や オブジェクト定義のエラーとも出ます。 マクロは次のようなものです。 Sub test() For i = 1 To 5 .Cells(2, 34).Value = i ActiveSheet.PrintOut Next i End Sub Cells(2, 34)に数字を入れてVLOOKUPでデータを差し込みます。 どんな問題があるでしょうか? 宜しくお願いいたします。 なお、EXCELはEXCEL2002です。

  • エクセルマクロ 印刷「105~110」などの自動連続印刷の仕方

    エクセルです。今、Vlookup関数で別のシートから呼び出して表示しています。例えば、シート1のA4に「101」と入力するとシート2を参照してデータをもってくるようになってます。 そして、102、103~と打つことによって変化していきます。 また、 101~131まで、一気に自動印刷するマクロはできました。 同様に、 201~231まで、一気に印刷するマクロはできました。 そこで、教えて欲しいのです。 105~110など途中のところを連続印刷するためのマクロはどのようになりますか。 もちろん、105~110などと打つセルをつくる必要はあると思いますが・・・。お願いしますm(_)m

  • エクセルデータベースからエクセル印刷用フォームに差込印刷したい。(No.667710類似質問)

    エクセルの「顧客リスト」データベースから、エクセルの「顧客別シート」印刷用フォームの各セルに差込印刷したいです。「顧客別シート」は様々な理由からワードではなく、既にあるエクセルフォームにて行いたいです。 ※ここまではNo.667710と同様の内容です。⇒http://okweb.jp/kotaeru.php3?qid=667710 No.667710の要望だとデータ件数が固定であることが前提となっていますが、私の要望はデータベースの件数が可変で、多数のユーザーが使用するので、個々のユーザーはVBAの編集をしなくてもいいことが前提です。 1.「顧客リスト」白紙(定型データベース:列固定) 2.「顧客別シート」(印刷用フォーム) 3.「印刷用マクロ」 の3つが含まれたブックを公開し、個々のユーザーが個別にダウンロードしたデータ(行数可変)を1に貼り付け、貼り付けたデータを全て「顧客別シート」で印刷するイメージです。 「顧客別シート」(印刷用フォーム)の余白は使用可能なので、そこに例えばその都度印刷範囲の行数やセル名等を入力してもらうことは可能です。 VBAについては、自動作成したマクロを開いてその一部(セル名等)を編集する程度のスキルしかありません。出来ればVLOOKUP等の関数を併用し、マクロ部分は必要最小限であれば助かります。(なるべくシンプルな方法で) 皆様のお知恵を貸してください。何卒宜しくお願いします。

  • エクセル 印刷プレビュー マクロフォームも印刷

    教えてください。 エクセルで VBAを使っています。 そのマクロをフォームのボタンを使って 1クリックで動くように、作成しました。 1シートに手順書のようなイメージでボタンを配置しています。 この状態で印刷をしたいのですが、 印刷プレビューで見たとき、並びに印刷したときに、 フォームのボタンが印刷されません。 「オプション」を見たのですが、そのような設定は ないようです。 どうしたら、印刷されるのでしょうか?

専門家に質問してみよう