図書ラベルといっても、一般のものとは違うかもしれない。
ここで図書ラベルといっているのは、カバーなどがなく、バーコードもないような旧来の図書を、バーコードが
使えるようにするために、貼り付けるラベルのこと。
Excelラベル印刷ウイザードでは、自動処理がどうもできにくそうだ。
ラベルの項目位置調整を手作業で毎回行わないといけないさそうなのは、
面倒なので、EXCELのマクロでやってみることにした。
図書ラベルの作成:不具合修正 2016年9月17日
http://engi.cocolog-nifty.com/sirenai/2016/09/excel-a7e2.html
図書ラベルの作成 その4:Ver2.0UP
http://engi.cocolog-nifty.com/sirenai/2014/07/ver20up-e850.html
図書ラベルの作成 その3
http://engi.cocolog-nifty.com/sirenai/2014/07/post-a10a.html
図書ラベルの作成 その2 (更新できないリンクが・・・のメッセージ)
http://engi.cocolog-nifty.com/sirenai/2014/07/post-dc69.html
図書ラベルの作成
http://engi.cocolog-nifty.com/sirenai/2014/06/post-ec3a.html
図書ラベル作成のマクロ Ver2.0をアップしました。
http://engi-seishi.la.coocan.jp/excel_sample.htm#supports
図書ラベル作成について:xl_tosyo_Label_Ver2.xlsm
この図書ラベル作成ブックは、EXCEL図書管理のサポートブックです。
新しく図書が入ってきたときとか、古い本でバーコードがないので貼り付けたいとか、
そのような時に図書に貼り付けるラベル印刷をエクセルだけで行うためマクロブックです。
つまり、図書データを元にして21面ラベル用紙に、バーコード、図書番号、図書名、作者などをラベル印刷します。
以前に21面ラベル用紙への宛名シール印刷のマクロを作成したことがありますので、
今回はこれを流用することとし、21面ラベル用紙への印刷することとしました。
郵便番号+住所1+住所2+宛先 が、バーコード+図書番号+書名+作者に変わっただけとも言えそうです。
このラベルを発行するタイミングはどんな時か考えてみました。
新規に図書が入ってきた場合、
@図書情報入力
Aラベルの貼り付け
Bビニールカバーなど装丁する
C棚に保管する。
順に、このような事を行うだろうと思います。
だとすると、ラベル印刷マクロは、事前に図書情報が
入力されていることを前提として、作成することになります。
全体の流れ(フロー)(1)は、
@ラベル元データを用意する
A元データの1レコード(1行データ)を別のラベル用紙用のシートに1ラベル範囲に値コピーする。
B Aの処理を元データがある間、繰り返す。
こんな感じでしょうか?
前回掲載したものはここまでの処理でした。
@のラベル元データをどのように作成するかについては、
視野に入れていませんでした。
今回は、@の元データをもっと簡便に用意できないかなぁということで
ユーザーフォームを使ってみようと思います。
まず、処理イメージ(2)を想像してみます。
図書データを取得し、
ユーザーフォーム上で表示し、
その中からクリックして、
ラベル元データを作成する
後は、上記(1)の元データからラベル用紙印刷の処理を
行えば完了です。
Userformでは、対象となる図書データを表示するlistboxと
そのlistbox内のリスト項目を選択した印刷の元となるデータを
listboxで表示することにしました。
Userform1
@前回開いたブックをオープンします。前回開いたブックはBに表記しています。MENUシートのF30の値です。
A新規に図書ブックを開きます。エクスプローラーを起動して、図書管理表シートがある図書ブックを選択します。
注)@Aともに、図書ブックを開き、図書管理表シートの値を当ブックの図書管理表シートにコピー&ペーストします。その後、開いた図書ブックは閉じます。
B開いた図書ブックの情報を記録・表示します。
C当フォームを閉じます。
DListbox1のデータ(当ブックの図書管理表シートの値)を検索(フィルター)することができます。検索項目は4項目。それぞれで、ワイルドカードが使えます。例:1を含むデータをフィルター検索するなら、*1* とテキストボックスに入力し、検索実行ボタンをクリックします。
結果は、Listbox1に表示されます。
E元の全データを表示させるには、この全Data表示ボタンをクリックします。
FListbox1の表示データの、先頭データを表示するか、最終データを表示するかのオプションボタンです。分類するわけではありません。
GListbox1内でリスト項目を選択し、このボタンをクリックすると、Listbox2に表示します。この表示データがラベル印刷するデータになります。
HListbox2のリスト項目を削除する場合は、このボタンをクリックします。
IListbox2の表示データすべてクリアします。
Jこのフォームからラベル印刷しないで、Bardataシートをアクティブにし、直接ラベルデータを編集するなどの場合にクリックします。
KBarcode21面シートを使ってラベル印刷します。
LBarcode21面2シートを使ってラベル印刷します。