指定数を行にする方法を解説
棚などの収まらない部品や材料などの在庫を識別するために、在庫ラベルといった識別するための用紙を印刷し、現物に貼る機会もあると思います。それをAccessから印刷しようとします。
テーブルにある数量の数だけAccessで印刷しようとすると意外と大変です。
やり方についてまとめました。
テーブル
品目テーブル
名前などの使用するデータ。
数量が実際に印刷する枚数になります
数量テーブル
数量列を数値にし、1から10まで行を登録します。
必要に応じてデータを登録させます。
またテーブル名、列名ともに任意な名前でOKです。
クエリ
上図の様にクエリを作成します。
ポイントは数量テーブルをリレーションさせません。
数量は数量テーブルの数量列を指定します。抽出条件で品目の数量を指定します。
数量テーブルの数量列は抽出条件にあればいいので、必ずしも出力する必要はありません。
SQLにすると以下になります。
SELECT 品目.品名, 品目.型式, 数量.数量 FROM 品目, 数量 WHERE 数量.数量 <= [品目].[数量];
結果
あとはこのクエリを元にレポートを作成すれば、目的の在庫ラベルの完成です。
注意点
数量が30といった様に数量テーブルの数以上の値を指定してみます。
数量テーブルにある数以上のデータは生成されません。
そのため使用するデータを想定し最大値以上のデータを予め設定します。