【Access】操作方法忘れてますやん!

こんにちは! イマジネットPCサポートの橋崎です。

今回は珍しくAccessのお話しです。Access自体ご存知ない方には少々伝わりにくいかも知れませんが、難しい事は書いていませんので、よろしければお付き合い下さい。

お断り

この記事ではVBAの記述等の解説はしておりませんのでご了承ください。

久しぶりのAccessデータベース作成依頼

今月に入り、およそ4年ぶりにAccessデータベース作成依頼がありました。

基本的に当店はパソコンの修理や設定、メンテナンスが中心の業務になっているので、本当に久しぶりの依頼です。(正直、作成にあまり時間が取れない状況ではあります。)

ご依頼内容はいたってシンプルです。日々の売上データを元にお客様ごとの締日で請求書を作成するもので、このあたりは一般の販売管理システムと同じ要領です。

それなら一般の販売管理システムを購入すればよいのですが、一般で販売されているシステムはあくまで一般用です。

業種によっては商品項目がマッチしない事も多々あります。

それと10月から始まるインボイスに対応した適格請求書の対応もまだのようでしたので、そちらもあわせてのご依頼です。

ちなみに現在はExcelを使用して請求書を作成しておられました。

パーツを流用して作成します。

今回のように日々の売上を締日ごとに集計して請求書を作成するパターンは王道とも言えます。

なのでベースとなるパーツ取り目的で作成しているシステムはあります。そこからパーツを移行させて作成するので非常に効率的です。

勿論、お客様ごとに合わせてデータの修正は行います。

しかしですね・・・

あれっ これって・・・

4年ぶりなので、Access 結構忘れてますやん・・・

4年ぶりとは言っても全くAccessに触れていなかった訳ではありません。

既存のお客様からはちょくちょく機能の追加等のカスタマイズ依頼はあり、その時はあまり作成には迷いはなかったのですが・・・・

しかし、いきなり詰まった箇所がありました。

Accessには行挿入の機能がありません。

先に「明細行の挿入」について簡単にご説明をした方がよいですね!

売上伝票を作成する時に商品を一伝票に複数入力する場合が多いと思います。

例えば下画像のように1行目に商品名「あ」2行目に「う」3行目に「え」と入力します。

商品「え」まで入力した時点で商品「い」の入力を忘れていたとします。

「じゃー 「え」の下に新規入力しましょうか。」で、あれば問題ありません。

しかし、この並びでいくと「あ」の下に入力したいと思いませんか?

厳密に言うと「あ」と「う」の間に「い」を挿入したいと思いませんか?

ところがAccessには行を挿入するための関数や機能がありません。この場合は残念ですが、「う」と「え」を削除してから新たに「い」から入力し直す必要があります。
※2行目に「い」商品を挿入する目的だけで、あとの並びはどうでもよい場合はこの通りではありません。

また キミか!

確かに手間ですが、サンプルはたった3行ですからあまり問題はありません。しかし現実には10行以上入力する事もあるでしょう。

そのような時は本当に効率が悪くなります。

しかし現実にはこのように「あ」と「う」の間に空白の行を挿入する事もできます。これなら何行登録していても簡単に希望の箇所に新規行を挿入する事ができます。

繰り返しになりますが、残念ながらAccessにこの機能がありません。

したがって自作で作成するしかないのです。

実際に作成を始めるとエラー出まくりの刑

先ほど得意気にパーツ取りのシステムを作成していたと言いましたが、恥ずかしい話、この機能はなく完全ではありませんでした。

とりあえず今まで作成した見本があるので、問題ないと思い実際に作成してみると・・・・

残念ながらエラー出まくりでした。

AccessってExcel等と違い、見えない仕組みの中で動作が絡むので、一発で動作させるのはやはり難しいですね!

それでも何とか作成が終了しましたが、さらなる問題が現れました。

データが無くても罫線を表示したい!

皆さんもお得意先に対して請求書や見積書を使用しますよね!

大体は商品が記載されている明細には下画像のように罫線が用紙の下まで引かれていると思います。

これって当たり前のようにあると思いますが、実はこの機能もAccessにはありません。

本来の機能はデータの数だけ表示されます。

実際には商品「あんな事」と「こんな事」の2つだけなので、これ以降は白紙の状態が本来の姿です。

海外では日本と違い、あまり請求書や見積書への形式にこだわりがないようです。したがってデータがある分だけ表示されていればよく、日本のように罫線がないとなんだか寂しいとはならないみたいです。(どこかの本の受け売りで実際に聞いた訳ではないのでウソかも知れません。)

しかしここは日本です。

罫線がない状態では納品できませんから作成するしかありません。

これについてはサンプルがバッチリあるので、基本的には移行するだけです。

しかし、若干変更を加える必要があったのですが、その時に別の箇所でミスをしていたようです。

通常、A4等で印刷する請求書や見積書の1ページ目には下画像の赤四角のように得先名等の項目があり、それから明細が始まります。しかし2ページ目からはこの項目がないので、その分明細行が増えます。つまり1ページ目と2ページ目以降は行数が違うのです。このように2ページ以上に印刷がわたる場合は1ページ目の何行目で改ページするか、それ以降のページも行数目で改ページするのか指定を行う必要があります。

この仕組みも最初から作成するとハッキリ言ってややこしいいのですが、これも以前サンプルを作成しているので別に問題はありません。以降するだけです。

後は少々変更を加えるだけなんですが・・・

改ページの挿入位置がこんなに微妙だなんて・・・

先程、1ページ目と2ページ以降の改ページする行数を指定すると説明しました。つまり商品の明細行が何行目になれば次ページに移動するよう指定をします。この仕組みの説明は省きますが、その時に改ページするトリガーになるツールを使用します。その機能を「改ページの挿入」と言います。この「改ページの挿入」ツールを次ページに進めたい位置に配置します。

これは当店が動作検証のために簡単なデータベースを作成した時の様子です。矢印の「・・・・」が「改ページの挿入」ツールです。この位置で次のページへ移動する目印みたいなものです。

得意先名の項目があり、その下に罫線があります。そしてその下に「改ページの挿入」ツールがあるのでこの位置から次ページへ移動します。本来は問題ない位置に見えるのですが、実際には動作に影響して2ページ以降の行数が指定の倍になりました。

これが正常に動作するようになった位置です。

キワキワまで詰めないとダメなようです。

うっかり移動したのでしょうね!

気が付くのに結構時間がかかりましたよ!

まだまだ問題は発生しそうですが、何とかなるでしょう。

それでは!

ご注意

記事内容についてのご質問の受付は時間が取れませんので行っておりません。

ご自身が使用しているパソコンの状態・環境により、同じような症状であっても同じとは限りません。したがって記事に書かれている内容を行う事で必ずトラブルが解消されるとは限りません。またこの記事を参考に作業される場合は自己責任でお願いします。作業された場合での損害や障害が発生しても当店は一切責任は負いませんのでご了承下さい。

この記事の内容は投稿日時点での内容です。時期によっては仕様などの変更により、この記事のとおりではない場合もございます。