【ExcelVBA・マクロ】Int関数の使い方|小数点以下を切り捨てて整数にする方法(Fixとの違いも解説)【コピペOK】

Int関数の使い方 ExcelVBA

VBAで数値を扱っていると、次のようなことはありませんか?

  • 小数点以下を切り捨てたい
  • 整数だけ取得したい
  • Fix関数との違いが分からない

このような場合は、Int関数を使うことで解決できます。
小数点以下を切り捨てて整数にする、基本かつ重要な関数です。

この記事では、Int関数の基本から実務での使い方、Fixとの違いまで分かりやすく解説します。


スポンサーリンク
スポンサーリンク

この記事でできること

  • Int関数の基本が分かる
  • 小数点以下の切り捨てができる
  • Fix関数との違いが分かる
  • 実務での活用方法が分かる

基本:Int関数の使い方

基本構文はこちらです。

Int(数値)

例:

MsgBox Int(3.9)

→ 3


Int関数の特徴

  • 小数点以下を切り捨てる
  • 負の方向へ切り捨てる(重要)

正の数の例

Int(3.9)   ' → 3
Int(10.7)  ' → 10

負の数の例(重要ポイント)

Int(-3.9)  ' → -4

0方向ではなく、より小さい値(負の方向)に切り捨てられます。


Fix関数との違い

関数動作
Int負の方向へ切り捨て
Fix0方向へ切り捨て

比較例

Int(-3.9)  ' → -4
Fix(-3.9)  ' → -3

この違いは非常に重要です。


セルに結果を書き込む

Range("A1").Value = Int(12.8)

変数を使った例

Dim num As Double
Dim result As Long

num = 25.6
result = Int(num)

MsgBox result

ランダム整数の生成(よく使う)

Rndと組み合わせるとランダムな整数を作れます。

Dim num As Long

Randomize
num = Int(Rnd * 10) + 1

MsgBox num

→ 1〜10のランダム数


指定範囲の整数を作るテンプレ

最小値 + Int(Rnd * (最大値 - 最小値 + 1))

実務でよくある使い方

  • 小数点切り捨て処理
  • 件数計算(端数切り捨て)
  • ランダム数生成
  • データ整形

特にランダム処理では必須です。


Roundとの違い

関数動作
Int切り捨て
Round四捨五入

注意点

① 負の数で結果が変わる

Fixとの違いを理解して使い分けてください。

② 小数点は完全に削除される

丸めではなく切り捨てです。


よくあるエラーと対処法

① 思った結果にならない

負の数の扱いを確認してください。

② 型が一致しません

数値型になっているか確認してください。

③ コードは正しいのにエラーになる

コピー時に全角文字や特殊文字が混ざることがあります。
その場合は該当行を手入力し直すと解決することがあります。


まとめ

  • Intは小数点以下を切り捨てる関数
  • 負の方向へ切り捨てるのが特徴
  • Fixとの違いを理解することが重要
  • ランダム処理や数値整形で活躍

Int関数を使いこなせるようになると、数値処理の幅が大きく広がります。
特にランダム処理や計算処理では頻出なので、ぜひ活用してみてください。

スポンサーリンク
スポンサーリンク
ExcelVBA
いがぴをフォローする

コメント

タイトルとURLをコピーしました