#453 数値を一桁ずつ別のテキストボックスに印刷する方法 レポート

Windowsのフォントはすべての文字が同じ幅でないため、OCR用紙などに単一のテキストボックスで金額などを出力するには無理があります。実際に印刷する文字の並びよってその都度左右の位置や間隔がずれてしまうからです。

そこで、数値を一桁ずつ別のテキストボックスに印刷するようにデザインすることによって、その問題を回避することができます。
次の例では、仮に最大で4桁の数値がレコードソースの「受注コード」フィールドに保存されているものとして、4つのテキストボックスを配置しています。

  1. まずレポートのデザインに4つのテキストボックスを配置し、所定の位置とサイズに調整します。

  2. 一番左のテキストボックスの「コントロールソース」プロパティを"=Mid$([受注コード],1,1)"とします。ここで「受注コード」はレポートのレコードソースに含まれるフィールド名です。

  3. 2番目のテキストボックスのコントロールソースプロパティを"=Mid$([受注コード],2,1)"とします。

  4. 同様に、3番目の同プロパティを"=Mid$([受注コード],3,1)"、4番目を"=Mid$([受注コード],4,1)"とします。
    もしもっと多くの桁数の数値であれば、同様にMid$関数の2番目の引数を5、6、7・・・・・と増やしていきます。
    レポートのデザイン
実行結果:
実行結果
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved