|
貼り付けた数字が全角だったりはしませんよね?
こちらは2000ですが、半角数字ならコピペでもちゃんと動作します。
取り敢えず、val() をやめて、1行、数値の判定を追加しました。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim str As String
If Target.Count <> 1 Then Exit Sub
If Not IsNumeric(Target.Value) Then Exit Sub '←追加
If CLng(Target.Value) = 0 Then Exit Sub
str = Worksheets("名前").Cells(CLng(Target.Value), Target.Column).Value
With Application
.EnableEvents = False
Target.Value = str
.EnableEvents = True
End With
End Sub
また、
>If Target.Count <> 1 Then Exit Sub
の行にブレークポイントを設定して、F8キー押下でステップ実行してみてください。
どこで上手くいかないか、こちらではちょっと判りません。
|
|