器用貧乏の独り言

器用貧乏なおっさんが気の向くままに。

【VBA】10進数を8進数に変換するマクロ

◇前置き

今日の記事も基数変換シリーズです。
今回まで2⇔10進数、16⇔10進数の変換マクロを紹介してきました。

ここまで来たら8⇔10進数もやってしまおう!ということで、10進数を8進数に変換するマクロを紹介します。

◇概要

毎度のことながらこんな感じのExcelを用意します。

B列に10進数を入れて変換ボタンをクリックするとC列に8進数が出力されます。

ソースコード

ソースコードはこんな感じです。

Sub Number_10_to_8()
 
Dim Num10 As Long
Dim i As Integer
Dim count As Integer
   i = 0
   count = 0
   
   For i = 3 To 14
       Num10 = Range("B" & i)
       If Range("B" & i).Value <> "" Then
           Range("C" & i).Value = WorksheetFunction.Dec2Oct(Num10)
           count = count + 1
       End If
   Next
 
   MsgBox count & "件のデータを10進数⇒8進数に変換しました。"
 
End Sub

◇使い方

実際に動かしてみましょう。
まずは適当な値をB列にいれます。

変換ボタンをクリックすると........

無事変換されました!

◇最後に

2進数、16進数と比べると8進数は使用機会の少ない基数かもしれません。

それでも全く使われない訳ではないので、この記事が誰かの役に立ってくれるとうれしいです。