みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FileMaker Pro Advanced13を使い始めた初心者です。
住所録から抽出したデーターをハガキに印刷する場合、
レイアウトでハガキのサイズに郵便番号、住所、氏名はレイアウトできるのですが。
郵便番号が、ハガキに印刷されている郵便番号枠内にうまくおさまりません。
文字を拡大しても文字列の長さが変わらないのでうまく枠に入りません。
いろいろ調べたのですが、middle関数で1文字づつ取り出して、並べるしか方法がないのか悩んでいます。
なにか、よい方法があったら教えていただきたく投稿しました。
Offline
元データに「-」もあれば、繰り返し8の計算フィールド
Middle ( 郵便番号[1] ; Get ( 計算式繰り返し位置番号 ); 1 )
を作って1繰り返しずつばらす。
データをCSVファイルでエクスポートして、宛名印刷ソフトにインポートするのが
余計な苦労をする必要がなく楽ちんですよ。
7つの数字の文字の間にサイズ指定のスペースを入れた計算式ひとつで済ませる案
フォントはOCRB、文字サイズは12p 。
FMでは文字サイズは整数しか使えないので
各文字の間は半角スペース19p、ハイフン部分は24p にした。
もっと細かく調整したければ、2文字目と3文字目の間のサイズをCase文のところで調整するとか。
Let([
$PN=Filter ( RomanHankaku ( 郵便番号 ) ; "0123456789" );
$no=7;
$PSp=" " ;
$PSz1=19; /* 数字の間隔 ( スペースのサイズ ) */
$PSz2=24; /* ハイフン部分の間隔 */
$result="";
$f="Case(
$no < 1;TextFont ( $result ; \"OCRB\" ) ;
Let([$result=Middle ($PN;$no;1) & Case($no=3;TextSize ($PSp ; $PSz2 );TextSize ($PSp ;$PSz1)) & $result;
$no=$no-1
];Evaluate($f))
)"
];
Evaluate($f)
)
Last edited by keima (2014-07-10 16:35:07)
Offline
数字だけ7桁の場合、全角表示にしておいて、18ポイントのDFP湘南行書体W5、字間を広く、という設定で、ごくわずかな誤差で、枠内に印刷できています。
だめなら、1文字間にタブを入れて、タブストップの設定を行えば、どんなフォントでも好きな大きさで使えるので、簡単でしょうね。
実は、郵便局側の都合は、枠は全く無視して、その辺りに印刷されていてもOKです。枠は、見た目だけの問題のようで、制限は、赤系で無いこと、ということだけの様です。
Last edited by Shin (2014-05-11 13:26:21)
Offline
Trabellerさん、ムムムさん、shinさん、keimaさん素早い回答ありがとうございます。
CSV出力で専用ソフトで印刷を考えたのですが、keimaさんのスクリプトで一度勉強してみます。
ありがとうございました。
Offline
Pages: 1
[ Generated in 0.010 seconds, 7 queries executed - Memory usage: 511.96 KiB (Peak: 518.2 KiB) ]