【vba】熨斗シール印刷プログラムを作ってみました

1年目は、鳴かず飛ばずだった通販サイト(残念)
やっぱ、ネット小売りは難しいな・・・・・:-(

2年目は何かテコ入れしなければと準備を始めたのが「熨斗サービス」。

そして買ったのがこれ、蝶結びの熨斗シール。
シール1枚:縦125×横51mm、それが1シートに5枚並んでシートサイズ:縦140×横270mm
VBAで熨斗シール印刷プログラム開発

早速、AccessVBA開発。
操作画面はこんな感じ
VBAで熨斗シール印刷プログラム開発

開発は簡単だろうと始めたら、これが意外に面倒でした。
熨斗シールって、小口シールとは全然別物 😮

小口シールは、少々ズレれも問題無い。
シール内にすべての要素が収まっていればOK。

でも熨斗は見た目が重要!
水引の結び目のど真ん中に文字を入れるのが超難しい。

最初、MS-Officeの新規ラベルウィザードで熨斗シールを登録。
でも、これで印刷すると微妙に文字がずれるんです。
VBAで熨斗シール印刷プログラム開発

そこで作戦変更。
B5サイズの空リポートを作り、その上に5枚分のテキストボックスを前もって並べました。
印刷は5枚単位で行う仕様です。
これなら、一度調整すればズレることは有りません。
VBAで熨斗シール印刷プログラム開発

で、完成!(かな?)
「なんだ簡単じゃん」と思いきや・・・これ表書き、お名前とも4文字がMAXなんです。
表書きは4文字で行けそうだけど、名前の文字数は少なすぎかな 😕

そこでVBAの出番!
文字数を3段階に分け、文字数に応じてフォントサイズを変えるスクリプトを書きました。

[名前1].FontSize = FontSizeXSmall

でも、ここで別の問題が!
VBAでフォントサイズを変えると、文字の中心線が左にズレてしまう 🙁
それを回避するためにもう1行追加。
フォントを小さくすることで左にズレる文字を、テキストボックスごと右に移動させるスクリプト!

[名前1].Top = [名前1].Top + TOPXposition

スクリプト前半部がこれ
VBAで熨斗シール印刷プログラム開発

スクリプト動作後のプレビューがこれ
テスト印字に漢字「中」を並べたのは、中央に縦棒があるから。
VBAで熨斗シール印刷プログラム開発

プレビューと実際の印字位置にもズレがあり、テスト印刷を何度も繰り返しました。

VBAで熨斗シール印刷プログラム開発

最大文字数、フォントサイズ、移動幅のベストな組み合わせを探し続けた結果・・・・
がーん、何度やっても丁度良い数字にたどり着かない。

こっちを増やせば、あっちがズレる 😮
私に粘り強さが足りないのかも・・・・・

で結論としては、名前書きは諦めました。
表書きのみ対応で、今年の中元商戦を戦おうと思います:-)

実際に印刷したのがこれ
VBAで熨斗シール印刷プログラム開発

お名前の中心位置にこだわらなければ3時間で完成する簡単な開発だったはず!
右往左往の3日間は何だったんだろう・・・・・・・ 😕

さてと、今年こそネット通販を軌道に乗せねば。

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA