この記事では、ExcelのVBAマクロを使用して、累乗やべき乗の計算や指数Eの表示にする方法(10の累乗や2の累乗など)について解説していきます。
ポイントとしては、
WorksheetFunction.PowerやFormat関数
を使用することです。
マクロ初心者でもわかりやすいように、変数名を「aaaaa変数aaaaa」といった名称にしています。そのため、ご活用の際には、これを適切な名前に変更してご利用ください。
それでは、詳しく見ていきましょう!
VBAマクロで累乗・べき乗の計算する方法【10の累乗を例に】
それではまず、10の累乗の計算方法について解説していきます。
この方法では、Excelシート上の特定の列に記載された数値を基に、10のべき乗を計算して隣のセルに結果を表示します。
Alt + F11にてVBE画面を開いて、以下コードをコピペしましょう。
Sub CalculatePowerOfTen()
Dim aaaaarowIndexaaaa As Long
Dim aaaaalastRowaaaa As Long
aaaaalastRowaaaa = Cells(Rows.Count, "A").End(xlUp).Row ' "A"列で最後の行を探す
' 2行目から最終行までループ
For aaaaarowIndexaaaa = 2 To aaaaalastRowaaaa
' 10の累乗を計算し、隣のセルに結果を格納
Cells(aaaaarowIndexaaaa, "B").Value = 10 ^ Cells(aaaaarowIndexaaaa, "A").Value
Next aaaaarowIndexaaaa
End Sub
コードのAlt+F8を押し、マクロ選択画面でCalculatePowerOfTen関数を実行します。
このコードでは、最初にシートのA列2行目からその最終行までの各セルについて、隣のB列に10の累乗の結果を出力するものになっています。
【使用の関数:WorksheetFunction.Power】
VBAマクロで累乗・べき乗(2の累乗を例)の計算する方法
続いては、2の累乗の計算方法について解説していきます。ここではWorksheetFunctionを使用して、より一般的なアプローチを紹介します。
Alt + F11にてVBE画面を開いて、以下コードをコピペしましょう。
Sub CalculatePowerOfTwo()
Dim aaaaarowIndexaaaa As Long
Dim aaaaalastRowaaaa As Long
aaaaalastRowaaaa = Cells(Rows.Count, "C").End(xlUp).Row ' "C"列で最後の行を探す
' 2行目から最終行までループ
For aaaaarowIndexaaaa = 2 To aaaaalastRowaaaa
' 2の累乗をWorksheetFunctionを使って計算し、隣のセルに結果を格納
Cells(aaaaarowIndexaaaa, "D").Value = WorksheetFunction.Power(2, Cells(aaaaarowIndexaaaa, "C").Value)
Next aaaaarowIndexaaaa
End Sub
コードのAlt+F8を押し、マクロ選択画面でCalculatePowerOfTwo関数を実行します。
このコードでは、C列にある数値を基に、2のべき乗を計算し、その結果をD列に出力するコードとなっています。
VBAマクロで10の累乗を使った表示に変換する方法【指数E】
最後に、VBAマクロを使って、計算結果を10の累乗を使った指数表記(Eを使ったもの)で表示する方法について解説します。
Alt + F11にてVBE画面を開いて、以下コードをコピペしましょう。
Sub ConvertToExponentialFormat()
Dim aaaaarowIndexaaaa As Long
Dim aaaaalastRowaaaa As Long
aaaaalastRowaaaa = Cells(Rows.Count, "E").End(xlUp).Row ' "E"列で最後の行を探す
' 2行目から最終行までループ
For aaaaarowIndexaaaa = 2 To aaaaalastRowaaaa
' 計算結果を指数表記で表示
Cells(aaaaarowIndexaaaa, "F").Value = Format(Cells(aaaaarowIndexaaaa, "E").Value, "0.00E+00")
Next aaaaarowIndexaaaa
End Sub
コードのAlt+F8を押し、マクロ選択画面でConvertToExponentialFormat関数を実行します。
このコードでは、E列にある数値を指数表記(例えば、E+01といったもの)でF列に表示します。
Format関数を使用して、数値を「0.00E+00」という形式の文字列に変換しています。この形式では、小数点以下2桁を保持しつつ、指数部をEで表現します。
【使用関数:Format関数】
まとめ VBAマクロで累乗・べき乗(10や2の累乗・指数表記)の計算・表示方法【WorksheetFunction.Power, Format関数】
この記事を通じて、Excel VBAを用いた累乗・べき乗の計算方法や指数表記Eへの変換方法を確認しました。
VBAの扱いに慣れ、さらに快適な生活を送っていきましょう。