エクセル方眼フォームの基本
「エクセル方眼紙」とは、セルの高さと幅を同じにして紙の方眼のように見せるレイアウトのことです。帳票や申請書などをExcelで作るときによく使われます。
ここでは エクセル方眼フォームをVBAで扱う方法 を、初心者向けにコード例やテンプレートをかみ砕いて説明します。
基本の考え方
- 方眼フォームの特徴
- セルを正方形にして罫線を引くことで「紙のフォーム」のように見せる。
- 入力欄やラベルをセル結合で表現することが多い。
- VBAでできること
- 自動で方眼紙レイアウトを作る
- フォームにデータを入力する
- フォームを初期化する
- 入力チェックを行う
テンプレ1:方眼紙レイアウトを自動作成
Sub CreateGridForm()
Dim ws As Worksheet: Set ws = Worksheets.Add
ws.Name = "Form"
' セルを正方形に設定
ws.Cells.ColumnWidth = 3
ws.Cells.RowHeight = 20
' 枠線を引く
ws.Range("A1:J20").Borders.LineStyle = xlContinuous
MsgBox "方眼フォームを作成しました!"
End Sub
VB- ポイント:
ColumnWidthとRowHeightを調整して正方形に。Borders.LineStyleで罫線を引く。
テンプレ2:入力欄を自動で作成
Sub CreateInputFields()
Dim ws As Worksheet: Set ws = Worksheets("Form")
ws.Range("B2:D2").Merge
ws.Range("B2").Value = "氏名"
ws.Range("B3:D3").Merge
ws.Range("B3").Value = "年齢"
ws.Range("B4:D4").Merge
ws.Range("B4").Value = "住所"
MsgBox "入力欄を作成しました!"
End Sub
VB- ポイント:
Mergeでセル結合してラベルを作る。- 帳票の見た目を整える。
テンプレ3:フォームにデータを登録
Sub RegisterData()
Dim ws As Worksheet: Set ws = Worksheets("Form")
Dim db As Worksheet: Set db = Worksheets("Data")
Dim lastRow As Long
lastRow = db.Cells(db.Rows.Count, "A").End(xlUp).Row
db.Cells(lastRow + 1, 1).Value = ws.Range("E2").Value ' 氏名
db.Cells(lastRow + 1, 2).Value = ws.Range("E3").Value ' 年齢
db.Cells(lastRow + 1, 3).Value = ws.Range("E4").Value ' 住所
MsgBox "データを登録しました!"
End Sub
VB- ポイント:
- フォームの入力欄(例:E列)からデータを取得。
- 「Data」シートに追記。
テンプレ4:フォームを初期化(入力欄クリア)
Sub ClearForm()
Dim ws As Worksheet: Set ws = Worksheets("Form")
ws.Range("E2:E4").ClearContents
MsgBox "フォームを初期化しました!"
End Sub
VB- ポイント:
- 入力欄をクリアして次の入力に備える。
テンプレ5:入力チェック(Validate処理)
Sub ValidateForm()
Dim ws As Worksheet: Set ws = Worksheets("Form")
If ws.Range("E2").Value = "" Then
MsgBox "氏名を入力してください"
Exit Sub
End If
If Not IsNumeric(ws.Range("E3").Value) Then
MsgBox "年齢は数値で入力してください"
Exit Sub
End If
MsgBox "入力内容は正しいです!"
End Sub
VB- ポイント:
- 空欄チェックや数値チェックを追加。
- 不正な入力を防げる。
例題で練習
'例1:方眼紙レイアウトを作成
Sub Example1()
CreateGridForm
End Sub
'例2:入力欄を作成
Sub Example2()
CreateInputFields
End Sub
'例3:フォームにデータを登録
Sub Example3()
RegisterData
End Sub
'例4:フォームを初期化
Sub Example4()
ClearForm
End Sub
'例5:入力チェック
Sub Example5()
ValidateForm
End Sub
VB初心者向けポイント
- 方眼紙レイアウトは「見た目重視」 → セル結合や罫線で帳票を作る。
- 入力欄を決めておく → どのセルに入力するかを固定。
- 登録処理は「最終行に追記」 → データベース的に使える。
- 初期化処理を用意 → 入力欄をクリアして次に備える。
- Validate処理を組み合わせる → 入力ミスを防ぐ。
👉 この「エクセル方眼フォームテンプレ」を覚えておけば、Excel VBAで 帳票入力・データ登録・初期化・入力チェック を一通り自動化できるようになります。
