エクセルマクロで、隣のセルに値を自動入力するVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひお試しください!
隣のセルに値を自動入力
以下のExcelVBAを実行すると、隣のセルに特定文字を自動的に入力します。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
With Cells(Target.Row, Target.Column)
'北海道だったら
If .Value = "北海道" Then
'右隣に指定値を入力
.Offset(0, 1) = "じゃがいも"
'静岡県だったら
ElseIf .Value = "静岡県" Then
'右隣の指定値を入力
.Offset(0, 1) = "お茶"
End If
End With
End If
End Sub
マクロ実行前
マクロ実行後
A列に文字入力すると、隣のB列に指定文字を自動入力します。
A列に「北海道」と入力すると同時に、B列に「じゃがいも」と自動入力します。
「Sheet1」でイベントを発生させるためには、
VBE画面にて「Sheet1」に、マクロコードを記述します。
隣のセルに値を自動入力(配列使用)
以下のExcelVBAを実行すると、隣のセルに特定文字を自動的に入力します。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim a As Variant
Dim b As Variant
Dim i As Long
'配列に値格納
a = Array("北海道", "静岡県", "山形県")
b = Array("じゃがいも", "お茶", "さくらんぼ")
'1列目の値が変化したら
If Target.Column = 1 Then
With Cells(Target.Row, Target.Column)
'配列をループ
For i = 0 To UBound(a)
'1列目の値と、配列「a」の値が一致したら
If .Value = a(i) Then
'B列に配列「b」の値を転記
.Offset(0, 1) = b(i)
End If
Next i
End With
End If
End Sub
マクロ実行前
マクロ実行後
A列に配列「a」の値を入力すると同時に、
B列に配列「b」の値を自動入力します。
「Sheet1」でイベントを発生させるためには、
VBE画面にて「Sheet1」に、マクロコードを記述します。
隣のセルに値を自動入力(別シート参照)
以下のExcelVBAを実行すると、隣のセルに特定文字を自動的に入力します。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long
Dim MyList As Variant
'「Sheet1」の1列目の値が変化したら
If Target.Column = 1 Then
'「Sheet2」の指定範囲を配列に代入
MyList = Worksheets("Sheet2").Range("A1:B3")
With Cells(Target.Row, Target.Column)
'配列をループ
For i = 1 To UBound(MyList, 1)
'1列目の値と、配列の値が一致したら
If .Value = MyList(i, 1) Then
'B列に配列の値を転記
.Offset(0, 1) = MyList(i, 2)
Exit For
End If
Next i
End With
End If
End Sub
マクロ実行前
マクロ実行後
「Sheet1」のA列に文字入力すると、
隣のB列に「Sheet2」から取得した文字を自動入力します。
この記事がお役に立ちますと幸いです。
【エクセルマクロ】特定文字の隣のセルに値入力する:2選
...
「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!
リンク