VBAでエクセル九九表(掛け算表)を作成したいときはないでしょうか。
けど、そんな中で悩むことは、
・VBAで書式設定をしたエクセル九九表を作成したいが方法がよくわからない
ですよね。
今回はそんなお悩みを解決する
・VBAを使って2桁以上の掛け算表を作る方法
についてまとめます!
もくじ
VBAで九九表作成とセルの書式設定を行う方法
VBAを使って九九表(掛け算表)を一瞬で作成し、さらにセルの書式設定も同時に行う方法について説明します。
VBAで九九表を作成するイメージ
VBAで九九表を作成するイメージについて説明します。
まずは空のエクセルを用意します。
VBAを実装し、マクロを実行すると、
書式設定つきの九九表の完成です。
さらに簡単な設定で2桁以上の掛け算表も作ることができます。
かんたんですね。
それでは早速実装してみましょう。
空のエクセルを用意
まずは空のエクセルを用意します。
先にマクロが有効なxlsm形式で保存しておきます。
サンプルVBAコード
次に、九九表を作成するためのVBAコードを用意します。
Sub 九九表を作成し書式設定する()
Dim i As Integer
Dim j As Integer
' 行列項目の値を設定します。
For i = 1 To 9
Cells(1, i + 1).Value = i
Cells(i + 1, 1).Value = i
Next i
' 九九表の値を設定します。
For i = 1 To 9
For j = 1 To 9
Cells(i + 1, j + 1).Value = i * j
Next j
Next i
' 表の罫線を設定します。
With Range("A1:J10")
.Borders(xlEdgeLeft).LineStyle = xlContinuous
.Borders(xlEdgeTop).LineStyle = xlContinuous
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeRight).LineStyle = xlContinuous
.Borders(xlInsideVertical).LineStyle = xlContinuous
.Borders(xlInsideHorizontal).LineStyle = xlContinuous
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
' 列項目の背景色を設定します。
With Range("A1:J1")
.Interior.Color = RGB(173, 216, 230)
End With
' 行項目の背景色を設定します。
With Range("A1:A10")
.Interior.Color = RGB(173, 216, 230)
End With
End Sub
VBAの実装
VBAの実装方法については
VBAの実装手順
をご参照ください。
マクロを実行する
VBAが実装できたらマクロを実行してみましょう。
「九九表を作成し書式設定する」を見つけ実行します。
はい、九九表が一瞬で作成されましたね!
そして書式設定や文字の位置も中央添えになっていますね!
VBAの説明
Dim i As Integer
Dim j As Integer
2つの整数型変数 i と j を宣言しています。これらの変数は、後続のループで使用されます。
For i = 1 To 9
Cells(1, i + 1).Value = i
Cells(i + 1, 1).Value = i
Next i
この部分では、1行目と1列目に1から9までの値を設定します。Cells(1, i + 1)は1行目の各列、Cells(i + 1, 1)は1列目の各行を指します。
For i = 1 To 9
For j = 1 To 9
Cells(i + 1, j + 1).Value = i * j
Next j
Next i
ここでは、九九表の各セルに掛け算の結果を設定します。外側のループは行を、内側のループは列を回ります。Cells(i + 1, j + 1)は、掛け算の結果を設定するセルを指します。
With Range("A1:J10")
.Borders(xlEdgeLeft).LineStyle = xlContinuous
.Borders(xlEdgeTop).LineStyle = xlContinuous
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeRight).LineStyle = xlContinuous
.Borders(xlInsideVertical).LineStyle = xlContinuous
.Borders(xlInsideHorizontal).LineStyle = xlContinuous
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
この部分では、範囲A1:J10のセルに罫線を引きます。xlEdgeLeft、xlEdgeTop、xlEdgeBottom、xlEdgeRightは外枠の罫線を、xlInsideVertical、xlInsideHorizontalは内部の罫線を指します。また、水平および垂直方向の中央揃えを設定します。
With Range("A1:J1")
.Interior.Color = RGB(173, 216, 230)
End With
1行目(列項目)のセルの背景色を淡い青色に設定します。RGB(173, 216, 230)は指定したRGB値の色を表します。
With Range("A1:A10")
.Interior.Color = RGB(173, 216, 230)
End With
最後に、1列目(行項目)のセルの背景色を同じく淡い青色に設定します。
VBAで2桁以上の掛け算表を作成する方法
次はVBAで2桁以上の掛け算表を作成する方法について説明します。
サンプルVBAコード
桁以上の掛け算表を作成するためのVBAコードになります。
Sub 二十掛け二十表を作成し書式設定する()
Dim i As Integer
Dim j As Integer
' 行列項目の値を設定します。
For i = 1 To 20
Cells(1, i + 1).Value = i
Cells(i + 1, 1).Value = i
Next i
' 二十掛け二十表の値を設定します。
For i = 1 To 20
For j = 1 To 20
Cells(i + 1, j + 1).Value = i * j
Next j
Next i
' 表の罫線を設定します。
With Range("A1:U21")
.Borders(xlEdgeLeft).LineStyle = xlContinuous
.Borders(xlEdgeTop).LineStyle = xlContinuous
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlEdgeRight).LineStyle = xlContinuous
.Borders(xlInsideVertical).LineStyle = xlContinuous
.Borders(xlInsideHorizontal).LineStyle = xlContinuous
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
' 列項目の背景色を設定します。
With Range("A1:U1")
.Interior.Color = RGB(173, 216, 230)
End With
' 行項目の背景色を設定します。
With Range("A1:A21")
.Interior.Color = RGB(173, 216, 230)
End With
End Sub
主な変更点
主な変更点は以下の通りです。
ループの範囲を変更
もとのコードでは For i = 1 To 9 でしたが、これを For i = 1 To 20 に変更し、同様に、内側のループも For j = 1 To 20 に変更しました。
範囲の変更
表の罫線設定範囲を A1:J10 から A1:U21 に変更しました。これは、20×20の表をカバーするためです。
列項目の背景色設定範囲を A1:J1 から A1:U1 に変更しました。
行項目の背景色設定範囲を A1:A10 から A1:A21 に変更しました。
マクロを実行する
VBAが実装できたらマクロを実行してみましょう。
「二十掛け二十表を作成し書式設定する」を見つけ実行します。
はい、二十掛け二十表が一瞬で作成されましたね!
VBAの実装手順
実装手順は以下の通りです。
Excel側にVBAを実装していきます。
①Excelを新規に開き、「開発」タブをクリックし、「VisualBasic」をクリックします。
もしくはショートカットキー「Alt」+「F11」でもOKです。
②標準モジュールを追加します。
左ペインのVBAProjectを右クリックし、「挿入」、「標準モジュール」を選択します。
③右ペインのウインドウに上記のVBAを入力します。
こちらで完了です。
VBAを実行する
では早速VBAの実行をしてみましょう。
①「開発」タブの「VBA」をクリックし実行したいマクロを選択し、「実行」をクリックします。
②処理がされたことが確認できれば完了です。
さいごに
いかがでしょうか。
今回は、
・VBAを使って2桁以上の掛け算表を作る方法
についてまとめました。
また、他にも便利な方法がありますので、よろしければご参照頂ければと思います。
コメントを残す