サイトアイコン SE日記

ExcelのVBA・マクロで文字を入力しセルに値をセットする方法

ここでは、ExcelのVBA・マクロで文字を入力しセルに値をセットする方法を紹介します。

ExcelのVBA・マクロで文字を入力しセルに値をセットするには、inputboxを使います。

<サンプル>

Sub test30()
‘表の書式設定
Range(“A1:B1”).Interior.Color = rgbYellow
Range(“A1:B1”).Font.Color = rgbRed
Range(“A1:B1”).HorizontalAlignment = xlCenter
Range(“A1:B7”).Borders.Weight = xlThin
Range(“A1:B7”).Font.Name = “Meiryo UI”
Range(“A1:B7”).Font.Size = 12

‘表のデータ
Range(“A1”).Value = “グループ”
Range(“B1”).Value = “名前”
Range(“A2”).Value = “A”
Range(“A3”).Value = “B”
Range(“A4”).Value = “C”
Range(“A5”).Value = “A”
Range(“A6”).Value = “B”
Range(“A7”).Value = “C”

Dim ret As Variant

‘名前入力
Range(“A2”).Activate
Do
If ActiveCell.Value = “” Then Exit Do

ret = Application.InputBox(prompt:=”氏名を入力してください “, Type:=2)

If ret <> False Then
‘氏名をセット
ActiveCell.Offset(columnoffset:=1).Value = ret

End If

ActiveCell.Offset(RowOffset:=1).Select
Loop

End Sub

このプログラムでは、B列の値を1件ずつ入力していきいます。「ret = Application.InputBox(prompt:=”氏名を入力してください”, Type:=2)」で文字列型の値を1件ずつ入力していってます。

文字が入力されたかどうかを「If ret <> False Then」で判断し、retの値がfalse出ない場合に、「ActiveCell.Offset(columnoffset:=1).Value = ret」でセルに値をセットします。

ちなみにretは「Dim ret As Variant」でvariant型で宣言しています。

数値型を入力場合は、↓を参考にしてください。
>>ExcelのVBA・マクロで数値を入力しセルに値をセットする方法

モバイルバージョンを終了