|
こんばんは。
もっといい方法があると思いますが、
>品名を入力しマクロを実行すると、
とあるのでイベントマクロにしてみました。
Worksheets("test")のシートモジュールに貼り付けて、
試してください。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myNO As Long
Dim i As Long
Application.ScreenUpdating = False
With Target
If .Count > 1 Then Exit Sub
If IsEmpty(.Value) Then Exit Sub
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then
Application.EnableEvents = False
For i = .row - 1 To 2 Step -1
If Cells(i, "B").Value = .Value Then
myNO = Cells(i, "C") + 1
Exit For
Else
myNO = (Left$(Application.Max(Range("C:C")), 1) + 1) * 10000 + 1
End If
Next
.Offset(, -1).Value = Format(.row - 1, "0000")
.Offset(, 1).Value = myNO
Application.EnableEvents = True
End If
End With
Application.ScreenUpdating = True
End Sub
|
|