SAK 図書館
VB 基礎編 (その七) 数値関数 int、FormatNumber、FormatCurrency
VB で数値を操作する関数について説明します。
■数値関数
abs 絶対値を返す
int 小数部切り捨て
fix 小数部切り捨て
sqr 平方根
【注】fix と int の違いは、マイナスデータのとき発生します。
例えば、引数として -8.4 を指定すると、
int は -9
fix は -8
を返します。
通常の切り捨てロジックでは int を使用します。
■abs
絶対値を求めます。
【例】'** -123 の絶対値を求める
dim a as integer
a = abs(-123)
a には、123 がセットされます。
■int、fix
小数部を切り捨てる。
【例】'** 少数第三位を四捨五入する
dim a as double
dim b as double
a = 200.125
b = (a * 1000 + 5) / 10
a = int(b) / 100
a には、200.13 がセットされます。
■sqr
平方根を求める。
【例】'** 2 の平方根を求める。
dim a as double
a = sqrr(2)
a には、1.14... がセットされます。
■2 進数を 10 進数へ変換 (応用)
public function CnvDec(b as string) as long
dim d as long
dim i as long
dim j as long
j = len(b)
for i = j to 1 step -1
d = d + val(mid(b, i, 1)) * 2^(j - i)
next
CnvDec = d
end function
【使い方】
a = CnvDec("10101010")
| |_ 文字変数または、リテラル
|_ 10 進数(long)
■FormatNumber
dim a as string
a = FormatNumber(10.1, 2, true, false, TristateTrue)
| | | | | |_ TristateTrue 桁区切りする
| | | | | TristateFalse 桁区切りしない
| | | | | TristateUseDefault 地域のプロパティに従う
| | | | |_ TRUE マイナスをカッコで囲む
| | | | FALSE マイナスをカッコで囲まない
| | | |_ TRUE 0.1 のゼロを表示する (0.1)
| | | FALSE 0.1 ゼロを表示しない (.1)
| | |_ 小数部の桁数
| |_ 数値、または、数値変数
|_ 文字列変数
** format 関数の方が便利な気がする。整数部のゼロ埋めは formatnumber
関数だけではできないが、format 関数では可能。
(数字表示形式)
a = format(10.1, "#,##0.00")
a = format(10.1, "0000000.00")
■FormatCurrency
dim a as string
a = FormatCurrency(10.1, 2, true, false, TristateTrue)
| | | | | |_ TristateTrue 桁区切りする
| | | | | TristateFalse 桁区切りしない
| | | | | TristateUseDefault 地域のプロパティに従う
| | | | |_ TRUE マイナスをカッコで囲む
| | | | FALSE マイナスをカッコで囲まない
| | | |_ TRUE 0.1 のゼロを表示する (0.1)
| | | FALSE 0.1 ゼロを表示しない (.1)
| | |_ 小数部の桁数
| |_ 数値、または、数値変数
|_ 文字列変数
** FormatNumber と似ているが、「\」の通貨記号が付く。
** format 関数でやると次のようになる。
a = "\" & format(10.1, "#,##0.00")
■FormatPercent
dim a as string
a = FormatPercent(0.05, 0, true, false, false)
| | | | | |_ TristateTrue 桁区切りする
| | | | | TristateFalse 桁区切りしない
| | | | | TristateUseDefault 地域のプロパティに従う
| | | | |_ TRUE マイナスをカッコで囲む
| | | | FALSE マイナスをカッコで囲まない
| | | |_ TRUE 0.1 のゼロを表示する (0.1)
| | | FALSE 0.1 ゼロを表示しない (.1)
| | |_ 小数部の桁数
| |_ 数値、または、数値変数
|_ 文字列変数
■VB 基礎編資料
■VB 入門編資料
■VB ビジュアル編資料
■VB テクニック編資料