Access Excel Report編 帳票作成方法、あれコレ!テクニック
--- 2018-06-12 ---
エクセルのレポート作成編ですョ
(^^)
一見、同じ様な事でも、ビミョ〜にカキコが違うので?
それぞれ読んで下ちゃい
同じ事、書いてる事もあるかも?ですが、、、
ここは、アレです
出来そうに無い!
って思われてる帳票のアドバイス的なテクニックです
上手く、応用して頂ければ、
エクセルしか使わない!
な、感じの意味が分かると思います
それと、どこかでカキコしてると思いますが、
テンプレで、エクセルバージョン指定して無いでしょ!
気が付きました?
アレは敢えて指定していません
どのバージョンでも動かす為ね
古いコードと言うのも同じです
新しい機能を数ステップ削るだけで、そのバージョンしか使えないソフトにしてしまうかが決まって来るのです
そう言う所の労力は惜しまない!
それと、ms Help などでは、バージョン指定の方が高速ですョ!
とは書いていますし、理論的には、そうだと思います
が、、、
検証しましたが、めっちゃ古い256M メモリのシングルCore でも、そんなに違いは有りませんでした
(^^);
まっ、キチンと組む方が、重要って事ね
体感的には、全く違いが分かりませんでした
---
(レポート作成編)
<<改ページ>>
絶対に、1ページ、20明細のレポートだとします
最初から、
20行分のエクセルを作れば良いです
ひな型は、1行のコピーで、データ分、貼り付けですが、
変数で、範囲指定が可能な様に加工して見て下さい
一応、コピペのペ、の部分だけ修正すれば、
1行のパターンと複数業のパターンが作れます
2つ有れば、かなりナ応用が効きますョ
更に?
この1ページの変数を?
エクセルひな型のシートに設定シートで取り込む様にしておけば、1ページ、20明細、縮小させるので、30明細
など、帳票作成時に適宜、修正可能です
アクセス側の画面で、コンボで指定でも良いかもデス
選択以外での入力可能なテキスト的なコンボね
好きに打てるので!
エクセル側だと、そこだけ教えておけば、アクセスを全く修正する必要は有りません
ex) エクセル設定シート
1ページ目のスタート行位置、明細数、終わりの位置(フッターをエクセルシート側で印刷する時など)
2ページ目以降、上記と同様
こんな感じかナ
ページ数=件数 / ページ明細数、切り上げ
1ページ目と2ページ目のタイトル部分が違うケースが多いと思うので、2ページ分、作る想定です
普通に、ページ設定で可能な感じの作りだと?
1ページ目も2ページ目以降も同じニャので、
ページ計算も更に楽です
エクセルで!
の設定は、アクセス側に余りに複雑な設定項目があると?
ユーザ側が迷ってしまうからデス
使えるレベルの人だけ用に、出来ない事は無いですョ!
的な方が分かり易いです
結局、スキルに依るので、敢えて縮小など想定する必要は無い!って事ね
エクセルに出力するメリットは?
プリンタに依る、余白調整が出来るからです
固定にしちゃった、2枚でる?空白用紙!
これが無くなります
黒の組織は、無理ニャので、諦めましょう
(^^);
<<分類で改ページ>>
これも、よく有るパターンですネ
どうします?
先程のを更に、細かく計算しながら制御しますか?
(^^)?
面倒ニャので止めましょう!
シートで分割で良いでは無いですか?
リンゴのシート
みかんのシート
イチゴのシート
解決ね(^^)
<<小計、合計の印刷>>
これも良くあるパターンです
面倒な、クロスな感じをSQL で実行しますか?
キット上手くいきません
そもそも遅くなるし、
自爆した時に、バグを発見し辛くなります
では、どうするの?
一時的な帳票専用のテーブルを作れば解決ね
分類的なコードを持たせ、
例えば)
10 = 未集計のそのままデータ
20 = 日付単位の集計後のデータ
80 = 月別合計
90 = 年合計
など
こう言う感じで、上手くソートできる様に考えます
帳票作成前に、
一括SQL で、ドカン!
っと作れば、印刷は楽チンSIM ね
一括更新のSQL、
利点はコレだけと言っても過言では有りません
納得いくまで、実験しましょう
取り敢えずは、こんな感じで、ほぼアクセスのレポート機能は必要ないです
一見、良さ気なレポート機能ですが、結構、振り回されますョ
一応な感じで、突破しておりますが、
エクセルの方が、簡単で修正し易いです
何より、プリンタが違っても余白調整も出来ますし、
エクセルなので、更に、セルに何かを書いても良いのデスからネ
アクセスレポート系では、
抽出、作成後の加工は当然できません
エクセルならでは、な便利な部分は最大限、活用しましょう
コレっ!
って感じを思い出したら、追記します
<<台帳な感じの個別帳票>>
これも多いです
例えば)
人の履歴、商品の履歴、資産の履歴
こう言うものは、1Book で出力します
専用フォルダで、機械の番号でBook を作成します
名前が分からないので、番号だけだと困りますネ
ニャらば、
入力、一覧画面などに表示可能な、テーブル項目
ハイパーリンクで良いのダョ
簡単ね、ルールが決まっていれば、後から更新する事も可能です
注意点は?
ユーザちゃんが、ニャぜか、エクセルを触ると?
データベースが変更される!
っと思う様です(^^);
スキルに依るのネ
ただのエクセルなので、変更しても変わらない
変更するのは、アクセスの入力画面から!
不思議ですが、ホントに多いので!
(^^);
それエクセルなので、そっち変えてもデータベースは変わりませんョ
(^^)?
ホントの本当!のお話しです
<<クロス的な帳票>> 2018-06-16
1行目、1列目、それぞれに数値のコードを指定します
これだけです
(^^)?
CountIf で、集計します
集計キーは? 複合文字列
例)
商品コード & - & 支払先コード
どちらも、数値なので、- で区切り
集計キー
例)
1-1001
*-1001
1-*
米印のワイルドキーが使えます
ワイルドキーは、使える関数とそうで無いのが有るので確認しましょ
拡張型の、CountIfS ?
沢山、条件が指定できる関数ですが、
使わない!
どこかのバージョンで追加されましたが、
こう言う機能を安易に使うので、他のPC、別の会社
などで、使えなくなりエラーがセルに表示されます
使わなくても、集計キーを合体させれば、集計可能です
Access と連動させれば、想定範囲の件数ニャらば、集計範囲を指定できます
集計範囲=名前の管理?
これで、名前と範囲を設定しておけば、
仮に1000件の想定で有っても、
簡単に2000件に変更できます
参照範囲を変えるダケね
---
明日見むら
村長さんでした
(^^)/ Excel Report