「書けまっせ!!PDF4」の高度な機能


このページでは、「書けまっせ!!PDF4」が持っている高度な機能をいくつかご紹介します。
※【プロフェッショナル/Plus】と書かれている項目は「書けまっせ!!PDF4 プロフェッショナル」「書けまっせ!!PDF4 プロフェッショナルPlus」のみの機能です。「書けまっせ!!PDF4 スタンダード」ではご利用いただけません。

ご紹介の内容


表示形式

書けまっせ!!PDF4では、テキストボックスに入力する値(数字)を自動的に加工して表示する「表示形式」機能があります。

日付や通貨、小数点やマイナスの表記法などを指定することができます。表計算ソフトウエアなどで実現している表示形式機能と同じような機能です。

例として西暦の日付を曜日付きの和暦で表示する表示形式を設定してみましょう。

日付スタイルの文字を入力表示形式プロパティ表示形式入力支援ダイアログ表示形式入力支援ダイアログ

表示形式は書式記号を使って表示の方法を指定しています。これらを変更することで、表示をユーザーの好みに変えることができます。

書式記号の例

表示形式の設定がテキストボックスや差込フィールドに入力されている値をどう表示するかは、「表示形式入力支援」ダイアログの各分類の「表示形式」欄が参考になります。

書式記号意味
###0;-###0整数、マイナス記号は「-」
###0;△###0整数、マイナス記号は「△」
#,##0.##;-#,##0.##マイナス記号は「-」、桁区切りあり、小数部は有効数字2桁まで(小数第3位を四捨五入)、小数部がない場合は表示しない
#,##0.0#;-#,##0.0#マイナス記号は「-」、桁区切りあり、小数部は有効数字2桁まで(小数第3位を四捨五入)、小数部がない場合は小数第1位を0で埋める
¥#,##0;-¥#,##0円マーク表示、マイナス記号は「-」、桁区切りは「,」
0.00%パーセント表示、小数部は2桁まで0で埋める
yyyy/MM/dd2007/05/06
yyyy/M/d2007/5/6
yyyy'年'M'月'd'日'2007年5月6日
ggge'年'M'月'd'日 'E'曜日'大正5年5月6日 土曜日

カスタム設定で利用できる書式記号

表示形式入力支援」ダイアログの「カスタム」分類でユーザーが表示形式の設定を編集することができます。表示する数値の形式は書式記号を使って表現します。

書けまっせ!!PDF4で使用できる書式記号は下記の通りです。

書式記号表示結果
M月の1~12
MM月の01~12
MMM月を1月~12月で表示
d日の1~31
dd日の01~31
e曜日を表す数値
E曜日を日~土で表示(日本語)
EEE曜日を日曜日~土曜日で表示(日本語)
ge年号のローマ字の頭文字(M、T、S、H)と年を表示
ggge年号(明治、大正、昭和、平成)と年を表示
yy(小文字)年の00~99
yyyy年の1900~9999
H時の0~23
HH時の00~23
k(小文字)時の1~24
K(大文字)午前/午後の0~11
h(小文字)午前/午後の1~12
m分の0~59
mm分の00~59
s(小文字)秒の0~59
ss(小文字)秒の00~59
a午前または午後
####.#表示する少数部の有効桁数を指定
書式記号の小数部の桁数よりも数値の小数部の桁数が多い場合、書式記号の数に合わせて四捨五入
【例】1234.56 → 1234.6
#.000表示する少数部の有効桁数を指定
書式記号の小数部の桁数よりも数値の小数部の桁数が少ない場合、0を表示
【例】12.3 → 12.300
0.#小数部のみがある場合、整数部1桁に0を表示
【例】.123 → 0.123
#.0#小数部有効桁を2桁とするが、小数部がない数値でも1桁には必ず0を表示
【例】12 → 12.0
【例】1234.568 → 1234.57
#,###桁区切り記号を挿入
【例】12345 → 12,345
%数値に100をかけてパーセント記号を追加
【例】0.5 → 50%
¥数値に通貨記号を追加
【例】50 → ¥50
?桁数の異なる小数点を添えて表示。整数部と小数部の余分なゼロがスペースで表示される

式と計算【プロフェッショナル/Plus】

テキストボックスの値(数字)を計算して表示する計算機能があります。

下図はテキストボックスに式を設定した画面です。テキストボックスにはそれぞれ「オブジェクト名」を持っています。図では赤色に塗りつぶされた四角の中に書かれています(「T20」など)。

式の例

画面の右側にはテキストボックス「T24」のプロパティ(情報)を表示しています。プロパティの[式]の欄に計算式を入力します。テキストボックス「T24」には、「T20」と「T21」、「T48」の値にそれぞれの金額を掛けた合計を表示する式が設定されています。

(T20×7800)+(T21×6780)+(T48×23520) ⇒ T24

プロパティの[式]の欄には「式入力支援」ダイアログを表示するボタンがあります。

式入力支援ダイアログ

式入力支援ダイアログでは、マウスを使って式を入力することができる他、計算結果の検証ができます。また、式で使用できる関数の一覧から関数の説明を表示したり、関数を式に挿入することができます。

関数

下記の表は式に使用できる関数の一覧です。

関数名 書式 引数 返値 説明
AVG AVG(値1, 値2,...) 数値1, 数値2...(複数指定可) 平均値 指定された引数の平均値を返します。
SUM SUM(値1, 値2,...) 数値1, 数値2...(複数指定可) 合計値 指定された引数の合計値を返します。
MIN MIN(値1, 値2,...) 数値1, 数値2...(複数指定可) 最小の値 指定された引数に含まれる最小の数値を返します。
MAX MAX(値1, 値2,...) 数値1, 数値2...(複数指定可) 最大値 指定された引数に含まれる最大の数値を返します。
TODAY TODAY( ) なし 現在の日付を示すシリアル値 (1900/1/1 = 1) 現在の日付を示すシリアル値を返します。
NOW NOW( ) なし 現在の時刻を示すシリアル値 (00:00:01 = 0.00001) 現在の時刻を示すシリアル値を返します。
DATE DATE(文字列) 日付文字列
【例】"2007/1/17"
日付のシリアル値 (1900/1/1 = 1)
【例】DATE("2007/1/17") = 39099
指定された日付文字列から日付を示すシリアル値を返します。
TIME TIME(文字列) 時間文字列
【例】"10:30:00"
時刻のシリアル値 (00:00:01 = 0.00001)
【例】TIME("10:30:00") = 0.4375
指定された時刻文字列から時刻を示すシリアル値を返します。
YEAR YEAR(値) 年を示すシリアル値 年 (1900 ~ 9999 の範囲の整数) 指定されたシリアル値に対応する年を返します。
MONTH MONTH(値) 月を示すシリアル値 月 (1 ~ 12 の範囲の整数) 指定されたシリアル値に対応する月を返します。
WEEKDAY WEEKDAY(値, 種類) 日付を示すシリアル値, 種類(1~3)[省略可] 曜日を示す整数指定されたシリアル値に対応する曜日を示す数値を返します。
種類が、
1のとき 1 (日曜) ~ 7 (土曜) の範囲の整数
2のとき 1 (月曜) ~ 7 (日曜) の範囲の整数
3のとき 0 (月曜) ~ 6 (日曜) の範囲の整数
DAY DAY(値) 日付を示すシリアル値 日 (1 ~ 31 の範囲の整数) 指定されたシリアル値に対応する日を返します。
HOUR HOUR(値) 日付と時刻を示すシリアル値 時間 (0 ~ 23 の範囲の整数) 指定されたシリアル値に対応する時間を返します。
MINUTEMINUTE(値) 日付と時刻を示すシリアル値 分 (0 ~ 59 の範囲の整数) 指定されたシリアル値に対応する分を返します。
SECOND SECOND(値) 日付と時刻を示すシリアル値 秒 (0 ~ 59 の範囲の整数) 指定されたシリアル値に対応する秒を返します。
PAGE PAGE( ) なし 現在のページ番号 現在のページ番号を返します。
TOTALPAGE TOTALPAGE( ) なし 総ページ数 総ページ数を返します。
MOD MOD(数値, 除数) 数値, 除数 剰余
【例】
MOD(22, 3)=1
MOD(22.5, 3)=1.5
数値を除数で割ったときの剰余を返します。
ABS ABS(数値) 数値 絶対値
【例】
ABS(-3)=3
ABS(3)=3
数値を絶対値にします。
INT INT(数値) 数値 小数点以下を切り捨てた整数
【例】
INT(20.111111)=20
INT(20.999999)=20
数値を小数点以下を切り捨てて整数にします。
ROUND ROUND(値, 桁数) 数値, 桁数 四捨五入した結果の値
ROUND(2.15,1) = 2.2
数値を四捨五入して指定された桁数にします。
ROUNDDOWN ROUNDDOWN(値, 桁数) 数値, 桁数 切り捨てした結果の値
ROUNDDOWN(2.15,1) = 2.1
数値を指定された桁数に切り捨てます。
ROUNDUP ROUNDUP(値, 桁数) 数値, 桁数 切り上げした結果の値
ROUNDUP (2.13,1) = 2.2
数値を指定された桁数に切り上げます。
T T(値) 文字列
【例】
T("abc")="abc"
T(123)=""
指定された値に応じた文字列を返します。
指定された値が文字列のときは、そのまま指定された文字列を返します。
指定された値が数値のときは、空文字列を返します。
LEN LEN(文字列) 文字列 文字数
【例】
LEN("abc")=3
LEN(12345)=5
指定された文字列の文字数を返します。
数値の場合にも暗黙に文字列に変換します。
TRIML TRIML(文字列) 文字列 トリミングされた文字列
【例】
TRIML(" abc")="abc"
指定された文字列の先頭からスペース、タブ、改行文字を削除します。
TRIMR TRIMR(文字列) 文字列 トリミングされた文字列
【例】
TRIMR("abc ")="abc"
指定された文字列の行末からスペース、タブ、改行文字を削除します。
RANK RANK(数値, 範囲, 順序) 数値, 範囲, 順序(0 = 降順, 1 = 昇順) 順位を示す値
【例】差込フィールド(表)
RANK(E2.b2, E2.b1:E2.b5, 0)=3
順序に従って範囲内の数値を並べ替えたとき、数値が何番目に位置するかを返します。
COUNT COUNT(範囲) 範囲 データ個数
【例】差込フィールド(表)
COUNT(E2.b1:E2.b5)
指定された範囲のオブジェクトに含まれる空白以外のデータ個数を返します。
COUNTBLANK COUNTBLANK(範囲) 範囲 データ個数
【例】差込フィールド(表)
COUNTBLANK(E2.b1:E2.b5)
指定された範囲のオブジェクトに含まれる空白データの個数を返します。
IF IF(式1, 式2, 式3) 条件式, 式(真の場合),式(偽の場合) 指定された式を判定する。
IF(t1=t2, t3, t4)
IF(t1=PAGE(), 今日, 昨日)
論理式の評価結果が真のときは第2引数で指定した値、偽の場合は第3引数で指定した値となります。
SUMIF SUMIF(条件範囲, 条件, 合計範囲) 条件範囲, 条件式を示す文字列, 合計範囲(省略不可) 合計値
【例】差込フィールド(表)
SUMIF(E2.a1:E2.a5, "=AAA", E2.b1:E2.b5)
この例は、条件範囲に表a1~a5を指定して、条件となる式"=AAA"を満す対応された合計範囲の表b1~b5内の合計値が返る。
条件を満たす範囲内の値の合計値を返します。
条件範囲と合計範囲の指定にはデータ数を揃える必要があります。
また条件範囲と合計範囲を同じにすることができます。
COUNTIF COUNTIF(範囲, 検索条件) 範囲, 検索条件を示す文字列 データ個数
【例】差込フィールド(表)
COUNTIF(E2.a1:E2.a5, "AAA")
この例は、条件範囲に表a1~a5を指定して、検索条件となる文字列"AAA"の個数をカウント。
検索条件を満たす指定された範囲のデータ個数を返します。
CONTAINS CONTAINS(文字列, 検索文字列) 文字列, 検索文字列 真(1)か偽(0)
【例】
CONTAINS("ABC", "A")=1
CONTAINS("ABC", "X")=0
CONTAINS(199,99)=1
指定された文字列内に検索文字列が含まれる場合に真(1)を返します。
含まれない場合に偽(0)を返します。
数値が指定された場合には、暗黙に文字列に変換して検索を行います。
AND AND(論理式1, 論理式2...) 論理式1, 論理式2... 真(1)か偽(0)
【例】
AND(E2.a1="AAA", E2.b1=999)
E2.a1に"AAA"かつE2.b1に999が入っていれば1を返し、いずれかが違っていれば0を返す
指定された複数の条件が全て真かどうか判定します。
OR OR(論理式1, 論理式2...) 論理式1, 論理式2... 真(1)か偽(0)
【例】
OR(E2.a1="AAA", E2.b1=999)
E2.a1に"AAA"またはE2.b1に999が入っていれば1を返し、いづれも違う場合には0を返す
指定された複数の条件のうち、どれか一つが真かどうか判定します。
NOT NOT(論理式) 論理式 真(1)か偽(0)
【例】
NOT(E2.a1="AAA")
E2.a1に"AAA"が入っていれば0を返し、違う場合には1を返す
指定された論理式の結果が真の場合には偽を返し、偽の場合には真を返します。

式の入力例

「式入力支援」ダイアログの[式]欄や「プロパティ」ペインにある「テキスト」項目の[式]欄には、次の例のような式を入力することができます。

入力例表示解説
"テスト"テスト文字として表示したい場合は「"」で文字列を囲みます。
1+12計算式を入力し、その結果(評価)を表示します
1+-2-1同上
AVG(T1:T5)6テキストボックスのT1からT5の平均(関数を使用)
SUM(E1.a1:E1.c3,T1,T3)256テキストボックスのT1とT3および差込フィールド(表)のE1.a1からE1.c3までの合計(関数を使用)

差込フィールドについては次項で説明します。

テキストボックスや差込フィールドの値と計算値(表示)は参考です。

Excelなどのように式の先頭に「=」を入力することもできますが、「書けまっせ!!PDF4」では先頭に書かれた「=」は意味がないため無視します。


差込フィールドとデータの差込【プロフェッショナル/Plus】

ExcelファイルのデータやCSVファイルのデータを取り込んで用紙PDF上に作成した特別な枠に表示する機能があります。

この特別な枠を差込フィールドといいます。差込フィールドにデータを流し込むことにより、用紙PDFはひとつでも、表示する文字や数値が異なるPDFを作成したり、印刷(差込印刷)することができるようになります。

用紙PDFに差込フィールドを配置すると下図の画面のようになります。

用紙PDFに差込フィールドを配置

下図は用紙PDFの差込フィールドにExcelデータを取り込んだ状態の画面です。

差込フィールドにデータを差し込んだ状態

差込用データのプレビュー機能で、差込データの確認やExcelファイルのワークシートを選択することができます。

差込用データのプレビュー

「出力時繰り返し」設定

差込フィールドには「出力時繰り返し」という設定ができます。この設定を行うと、取り込んだデータを差込フィールドに繰り返し流し込むことができます。

出力時繰り返し設定

差込フィールドの数よりもデータの量が多い場合、溢れたデータは「出力時繰り返し」設定のある差込フィールドに繰り返し差し込まれます。これにより、文字や数値の異なる用紙PDFを作成し、印刷やPDFを作成することができます。

この動作は、印刷やPDF出力の時のみ作用します。差込の確認は、印刷プレビューでチェックすることもできます。

下図は実際に「出力時繰り返し」機能を使って異なる文字や数値を差し込んだPDFの例です。

出力時繰り返しで作成したPDF

コマンドライン【プロフェッショナル/Plus】

「書けまっせ!!PDF4 プロフェッショナル」「書けまっせ!!PDF4 プロフェッショナルPlus」はコマンドラインでの操作ができます。

コマンドラインから次のような作業が行えます。

コマンドラインの詳細

コマンドラインで使用できるコマンドと構文は下記のようになります。

  PDFWriteCmd { /D <filepath> [/F <filepath>] /O <filepath> [/P <printername>] [/K <password>]} | [/H]

オプションは下記のようになります。

オプション 解説
/D <filepath>で作業対象のプロジェクトファイルを指定。省略不可。
/F <filepath>で差込用データファイルを指定。省略可能。
/O <filepath>でPDF出力時の出力先ファイルパスを指定。印刷の場合は無視されます。省略不可。
/P <outputtype>でプリンタ名を指定。省略した場合や”@PDF”を指定した場合はPDF出力となります。
/K <password>でプロジェクトファイルのパスワードを指定します。
/H or /? ヘルプを表示します。

例)test.wppに差込用データ(data.xls)を差し込み、test.pdfに出力

  > PDFWriteCmd.exe /D c:\work\test.wpp /F c:\work\data.xls /O c:\work\test.pdf

書けまっせ!!PDF4 ご購入に関するお問い合わせ先(製品の操作方法などに関するご質問はサポートへどうぞ。)
logo TEL:03-5829-9030 FAX:03-5829-9024 E-MAIL:sales@antenna.co.jp

Copyright © 1996- Antenna House, Inc. All rights reserved.
Antenna House is a trademark of Antenna House, Inc.