VBAで数値を扱っていると、次のようなことはありませんか?
- 小数点以下を切り捨てたい
- 整数だけを取得したい
- Int関数との違いが分からない
このような場合は、Fix関数を使うことで解決できます。
小数点以下を切り捨てて整数部分だけを取得できる関数です。
この記事では、Fix関数の基本からIntとの違いまでを初心者向けに分かりやすく解説します。
この記事でできること
- Fix関数の基本が分かる
- 小数点以下を切り捨てできる
- Int関数との違いが分かる
- 実務での使い方が分かる
基本:Fix関数の使い方
基本構文はこちらです。
Fix(数値)
例:
MsgBox Fix(3.9)
→ 3
Fix関数の特徴
- 小数点以下を切り捨てる
- 符号(プラス・マイナス)を維持する
正の数の例
Fix(3.9) ' → 3
Fix(10.7) ' → 10
負の数の例(重要)
Fix(-3.9) ' → -3
ここが重要なポイントです。
Int関数との違い
よく比較されるのが Int関数です。
| 関数 | 動作 |
|---|---|
| Fix | 0方向へ切り捨て |
| Int | 負の方向へ切り捨て |
比較例
Fix(-3.9) ' → -3
Int(-3.9) ' → -4
負の数で結果が変わるため注意が必要です。
セルに結果を書き込む
Range("A1").Value = Fix(12.8)
変数を使った例
Dim num As Double
Dim result As Long
num = 15.6
result = Fix(num)
MsgBox result
実務でよくある使い方
① 小数点を切り捨てて処理
Fix(売上 / 単価)
② 表示用の整数化
端数を無視したい場合に便利です。
③ データ整形
小数点が不要なデータの整理に使えます。
Roundとの違い
| 関数 | 動作 |
|---|---|
| Fix | 切り捨て |
| Round | 四捨五入 |
注意点
① 小数点は完全に削除される
丸めではなく切り捨てです。
② 負の数で結果が変わる
Intとの違いに注意してください。
よくあるエラーと対処法
① 型が一致しません
数値型であるか確認してください。
② 思った結果にならない
Intと混同している可能性があります。
③ コードは正しいのにエラーになる
コピー時に全角文字や特殊文字が混ざることがあります。
その場合は該当行を手入力し直すと解決することがあります。
まとめ
- Fixは小数点以下を切り捨てる関数
- 0方向へ切り捨てるのが特徴
- 負の数ではIntと結果が異なる
- 実務では整数化やデータ整形で活躍
Fix関数を理解すると、数値処理の精度と柔軟性が向上します。
特にIntとの違いは重要なので、しっかり押さえておきましょう。

コメント