【第54回】 AMPscript を使って数値をパーセント表示させる方法
Salesforce Marketing Cloud の独自関数である AMPscript にもエクセル関数のように計算関連の関数が存在します。事前に SQL を用いた計算済みのフィールドを用意せずとも、メールの生成の過程で数値を計算させて表示させることが可能です。本日は AMPscript で数値をパーセント表示させたい場合の方法をお知らせします。
%%=FormatNumber(Divide(A,B),"P")=%%
この場合 FormatNumberという関数を使用します。
サンプルの引数 1の Divide(A,B) は、A ÷ B を意味しますので、ここには数字型のフィールドを充ててもらえれば大丈夫です。
サンプルの引数 2の "P" は小文字でも問題ないです。パーセントの P を意味します。
参考までに AMPscript の計算関連の関数は下記のようなものがありますので併せて押さえてください。
■ Add
概要:提供された値の合計(足し算)を返します。
構文:Add(1, 2)
■ Divide
概要:最初の引数を 2 番目の引数で除算(割り算)した結果を返します。
構文:Divide(1, 2)
■ FormatCurrency
概要:指定された文字列を通貨値として書式設定します。指定された形式で使用される小数点以下の桁数が値自体の小数点以下の桁数よりも少なく、残りの数値の合計が 5 以上の場合、この関数は数値を切り上げます。指定された形式で使用される小数点以下の桁数が値自体の小数点以下の桁数よりも少なく、残りの数値の合計が 5 未満の場合、この関数は数値を切り下げます。
構文:FormatCurrency(1, 2, 3, 4)
■ FormatNumber
概要:指定された形式で使用される小数点以下の桁数が値自体の小数点以下の桁数よりも少なく、残りの数値が 5 以上の場合、この関数は小数を切り上げます。指定された形式で使用される小数点以下の桁数が値自体の小数点以下の桁数よりも少なく、残りの数値の合計が 5 未満の場合、この関数は小数を切り下げます。-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 の範囲外の整数は、指数表記で出力されます。
構文:FormatNumber(1, 2, 3)
有効なフォーマット タイプ値
C - 通貨
D - 10 進数
E - 指数
F - 固定小数点
G - 一般
N - 番号
P - パーセント
R - ラウンドトリップ (形式により、文字列に解析された値を解析して数値に戻すことができます)
X - 16 進数
■ Mod
概要:最初の数値を 2 番目の数値で除算(割り算)した後の余りを返します。
構文:Mod(1, 2)
■ Multiply
概要:2 つの数値を乗算(掛け算)した結果を返します。
構文:Multiply(1, 2)
■ Random
概要:指定した値の間 (両端を含む) のランダムな整数を返します。
構文:Random(1, 2)
■ Subtract
概要:2 つの整数の差分(引き算)を返します。
構文:Subtract(1, 2)
先ほど「事前に SQL を用いた計算済みのフィールドを用意せずとも、メールの生成の過程で数値を計算させて表示させることが可能です。」と書きましたが、事前にフィールドを用意した方が、メール送信のパフォーマンスが上がるということはご想像の通りです。表示に必要な情報は、事前に準備するのがベストプラクティスになりますので、その点はご承知ください。
今回は以上です。
