| >金額は最高10桁です
>これを伝票印刷するときに
>↓
>□□□□□□□□□□
>のますに、ひとますづつに数字一桁入れて伝票印刷を行いたいので
>#部分列( [金額],10,10)
>#部分列( [金額],10,9)
>というように関数を使用したのですが
次のように試されたらいかがでしょうか???
■変更前
#部分列( [金額],10,10)
■変更後
#部分列( #右側文字列( #複写( "□",10 ) + #str([金額]), 10 ),10,1 )
事前準備として、
#複写( "□",10 ) は "□□□□□□□□□□" の文字列を作ります。
↑
※□は全角空白文字または半角空白文字の意味です。
さらに、この文字列に#str([金額]) を連結しますので、
例えば、[金額]の値が "1234" だった場合、
"□□□□□□□□□□1234" という文字列が出来あがります。
最後の仕上げに#右側文字列( )を利用して、
この長ったらしい文字列の右側から10文字取り出します。
↓
"□□□□□□1234"
図式風に…こうすると、
#部分列( "□□□□□□1234", 1, 1 ) → "□" になります。
#部分列( "□□□□□□1234", 2, 1 ) → "□" になります。
:
:
#部分列( "□□□□□□1234", 7, 1 ) → "1" になります。
#部分列( "□□□□□□1234", 8, 1 ) → "2" になります。
#部分列( "□□□□□□1234", 9, 1 ) → "3" になります。
#部分列( "□□□□□□1234", 10, 1 ) → "4" になります。
実際には、"□□□□□□1234" の部分を
#右側文字列( #複写( "□",10 ) + #str([金額]), 10 )
と書きますので注意してください。
各マスに印字する場合は、
左のマスから順番に次のような式を指定すれば出来上がると思います。
#部分列( #右側文字列( #複写( "□",10 ) + #str([金額]), 10 ),1,1 )
#部分列( #右側文字列( #複写( "□",10 ) + #str([金額]), 10 ),2,1 )
:
:
#部分列( #右側文字列( #複写( "□",10 ) + #str([金額]), 10 ),9,1 )
#部分列( #右側文字列( #複写( "□",10 ) + #str([金額]), 10 ),10,1 )
|