アルツの備忘録

最近、年のせいで物忘れが激しい。
そこで、いろんなことをここに記録して行きたいと思います。

Excelで業務自動化システム その5 <EXCEL差し込み印刷>

2020年01月27日 13時06分43秒 | Excel
■EXCEL差し込み印刷ツール
・Excelでシート上に作成した印刷フォーム(テンプレート)に、差し込みを行い印刷する。
・差し込み場所は、表示したい場所にデータシートの項目名を指定する。
     ※差込処理:テンプレート上に配置された、項目名をデータに置き換える処理

<機能概要>
1、SQLを記述でき、任意のDBよりデータ抽出が可能
  ORACLE、Microsft SQLServer、ACCESS(MDB、ACCDB)、EXCEL:(xls、xlsx)、CSV:(CSV、TXT)
2、Excel内に作成した、複数のテンプレートの中から選択が可能
   ・印刷シートへの差し込み方式は、2種類あります
 1)帳票方式:出力したい場所へ、項目名を [ ] で囲い記述する。
 2)ラベル方式:作られたフォーマットを、横と縦へ指定された回数コピーする。
3、「シート作成」で指定されたテンプレートを複写し、抽出データから差込処理を行う。
4、「シート印刷」で作成された複数シートの一括印刷を行う。
5、「シート削除」で作成された複数シートの一括削除を行う。

<印刷シートの設定方法>
     ※ [ ] 個数で処理内容が異なる。
■帳票類の場合 
     ※データはキー項目でソートされていること
 ・メニューシート「テンプレート」の設定
   帳票           : 印刷シート名
   行数         : 縦の繰り返し数 ([項目名]の1ページにおける差し込み回数)
   横繰返        : 数は指定しない(指定するとラベル方式と判断される)
 ・[ ] 個数で処理内容
    データ項目      : [項目名]    指示された回数下方向へ出力
    キー項目(改ページグループ)    : [[項目名]]  ※必須項目
       属性項目(ページ内1回表示)    : [[[項目名]]]
              ページ項目     :  [[[PAGE]]]    キー項目単位のページ連番
                                    :  [[[GPAGE]]]   キー項目単位の総ページ数
                                    :  [[[PAGEA]]]   全体のページ連番
                                    :  [[[GPAGEA]]]   全体の総ページ数 
        累計項目         : [[[%項目名%]]]  キー単位でページ毎の累計値を出力する項目名
         総合計項目 ; [[#項目名#]]]  キー単位の 最終ページに出力する合計項目名 
        総合計表示文字 : [[[$表示文字$]]]  キー単位の最終ページに出力する表示文字
 
■ラベルの場合 
・メニューシート「テンプレート」の設定
     帳票          : 印刷シート名
     行数       : 縦へのラベル範囲のコピー繰り返し数
     横繰返      : 横へのラベル範囲のコピー繰り返し数
・[ ] 個数で処理内容
        ※キー項目、属性項目は不要
  データ項目 : [項目名]  
  ラベル範囲の先頭セルの次の横出力位置の設定 : [[[[H]]]]
    ※セル結合してある行には設定しない(オフセット位置ズレを起こす)
  ラベル範囲の先頭セルの次の縦出力位置の設定 : [[[[V]]]]

■分かりずらいので、実際の例で説明します。
<処理例>
データ例 : 「データ」シートの例です、1行目を項目名とします。
        この項目名を使って、印刷シートに差し込みします。
 

<テンプレートシート例> 1 
  ・注文書の例です
  ・[[発注先]]をキー項目として、改ページを行います(指定行数をオーバーしても改ページします。)
  ・[アイテムコード]、[アイテム名]などが下方向へ指定回数出力されます。
  ・[[[発注先名]]]、[[[郵便番号]]]などは、ページ内で一回出力されます。
  ・[[[%計画数%]]]、[[[%金額%]]]は、キー項目でページ単位の累計が出力されます。  
  ・H1,I1セルの[[[PAGEA]]]、[[[GPAGEA]]]はページ表示の為の指定
  ・H2,I2セルの[[[PAGE]]]、[[[GPAGE]]]はページ表示の為の指定
  ・G1,G2セルの上記のセルを使ってページ表示するため式を記述
    例 : ="Page "&H2 & "/" &I2


出力例 ※上記シートに差し込みを行った例


<帳票出力例>2 
 ・Eiaj標準納品書をテンプレートにした例です。
 ・バーコードは出力するセルのフォントをバーコードにします。
 ・縦の繰返し回数は1です。
 ・同じ項目名が幾つか記述されていますが同じ値を出力します。
 
    差し込み結果

<ラベル方式 出力例>3 
・ラベル方式の現品票の例です。
・メニューシート「テンプレート」の設定
   帳票          : 現品票
   行数       : 2
   横繰返      : 2

・[[[[H]]]]の行位置、 [[[[V]]]]の列位置をコピー開始位置とする。
・[[[[H]]]]の列位置のひとつ前、 [[[[V]]]]の行位置日膣前をコピー終了位置とする。
・横方向のコピーは、[[[[H]]]]の位置分オフセットして出力とする。
・縦方向のコピーは、[[[[V]]]]を位置分オフセットして出力とする。

差し込み結果

  
<ラベル方式 出力例>4 
・給与明細表のラベル方式の差し込み例です。
・メニューシート「テンプレート」の設定
  帳票    : 現品票
  行数   : 2
  横繰返  : 2

出力例


<操作方法>   
①DB設定ボタン 
  ・データベースとの接続方法を指定
   ※ここでは説明を省略します。
②データ抽出
   ※ここでは説明を省略します。
③テンプレート 
  ・作成したテンプレートを、ここへ登録する。
➃シート作成
  ・「使用テンプレート」セルで、ドロップダウンリストの中から対象とするものを選択する。
     ※ページ行数、横繰り返し数は③から引用される。
  ・指定されたテンプレートを使用し印刷用のシートを作成する。
⑤シート印刷 
  ・作成されたシートを一括印刷する。
⑥シート削除
  ・作成されたシートを一括削除する。 



■ダウンロードは  こちらのページ をご覧ください。


最新の画像もっと見る

コメントを投稿