|
nanaと申します。
みなさま教えてください。
何とか色々調べて下記のようなものを作成しましたが、
これを標準モジュールで「マクロの実行」で実行したいのですが
どのように書き換えればいいのでしょうか。
PrivateをPublicに換えればいいのでは、というところまで
いったのですが。
よろしくお願いします。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim celTarget As Range
Dim cel As Range
Dim ixCol As Long
Set celTarget = Intersect(Target, Range("A1"))
If celTarget Is Nothing Then Exit Sub
If celTarget = "" Then Exit Sub
On Error Resume Next
ixCol = WorksheetFunction.Match(celTarget, Range("E1:J1"), 0)
On Error GoTo 0
If ixCol = 0 Then
MsgBox "転記先が見つかりませんでした。シートを確認・修正の上、もう一度 A1 の値を選択してください。", vbCritical
Exit Sub
End If
ixCol = ixCol + Range("E1").Column - 1
For Each cel In Range("B2:B4")
Cells(cel.Row, ixCol).Value = cel.Value
Next
End Sub
|
|