ここでは Offset × 条件分岐 × 差分計算 を組み合わせて「セル同士を比較し、差分を計算して隣列に出力する」黄金パターンをまとめます。
売上表・勤怠表・在庫表などでよくある 前後比較・隣列比較・基準値比較 を自動化できます。
基本パターン 10選
1. 前行との差分を計算
Dim r As Range
For Each r In Range("A3:A20")
r.Offset(0, 1).Value = r.Value - r.Offset(-1, 0).Value
Next r
VB👉 各行の値と前行との差分を右隣に出力。
2. 次行との差分を計算
Dim r As Range
For Each r In Range("B2:B19")
r.Offset(0, 1).Value = r.Value - r.Offset(1, 0).Value
Next r
VB👉 各行の値と次行との差分を右隣に出力。
3. 左隣セルとの差分
Dim r As Range
For Each r In Range("C2:C20")
r.Offset(0, 1).Value = r.Value - r.Offset(0, -1).Value
Next r
VB👉 各セルと左隣との差分を右隣に出力。
4. 右隣セルとの差分
Dim r As Range
For Each r In Range("D2:D20")
r.Offset(0, 1).Value = r.Value - r.Offset(0, 1).Value
Next r
VB👉 各セルと右隣との差分をさらに右列に出力。
5. 基準値との差分(例:100)
Dim r As Range
For Each r In Range("E2:E20")
r.Offset(0, 1).Value = r.Value - 100
Next r
VB👉 各セルと基準値 100 の差分を右隣に出力。
6. 前月売上との差分
Dim r As Range
For Each r In Range("F3:F20")
If IsNumeric(r.Value) And IsNumeric(r.Offset(-1, 0).Value) Then
r.Offset(0, 1).Value = r.Value - r.Offset(-1, 0).Value
End If
Next r
VB👉 前月売上との差分を右隣に出力。
7. 勤怠時間の増減判定
Dim r As Range
For Each r In Range("G3:G20")
If r.Value - r.Offset(-1, 0).Value < 0 Then
r.Offset(0, 1).Value = "減少"
Else
r.Offset(0, 1).Value = "増加/同値"
End If
Next r
VB👉 前日より減ったか増えたかを判定。
8. 在庫数の変動チェック
Dim r As Range
For Each r In Range("H3:H20")
Dim diff As Double
diff = r.Value - r.Offset(-1, 0).Value
If diff <> 0 Then
r.Offset(0, 1).Value = diff
End If
Next r
VB👉 在庫数の変動がある場合のみ差分を出力。
9. 2列間の差分(売上と目標)
Dim r As Range
For Each r In Range("I2:I20")
r.Offset(0, 2).Value = r.Value - r.Offset(0, 1).Value
Next r
VB👉 売上列と目標列の差分を右2列目に出力。
10. 差分が閾値以上なら警告
Dim r As Range
For Each r In Range("J3:J20")
Dim diff As Double
diff = r.Value - r.Offset(-1, 0).Value
If Abs(diff) > 50 Then
r.Offset(0, 1).Value = "警告:差分大"
Else
r.Offset(0, 1).Value = diff
End If
Next r
VB👉 差分が ±50 を超えたら「警告」を出力。
✅ まとめ
- Offset → 前行・次行・隣列を参照して比較
- 条件分岐 → 数値判定・閾値判定・増減判定などを組み合わせ
- 差分計算 → 売上・勤怠・在庫・目標などの比較を自動化
- 黄金パターン → 前後比較・隣列比較・基準値比較・閾値判定
💡 この「データ比較 × Offset × 条件分岐 × 差分計算」パターン集を使えば、売上表・勤怠表・在庫表などの 変動チェックや異常検知 を一瞬で自動化できます。

