|
ワークシートモジュールを標準モジュールに変更するには、
Sub Worksheet_BeforeDoubleClick(xxxxxxx)を止めて
Sub Test1(xxxxxxx) にすればよいでしょうか。
以下のようにかえたら保存(コンパイル)はできたものの、Cnmなどが転記されず、また、ユーザーフォームがで表出されなくなってしまいました。
なお転記元のシートはoverviewといいます。
Option Explicit
Dim Cnm As String
Dim Pnm As String
Dim Mnm As String
Dim Tnm As String
Public ws1 As Worksheet
Public i As Long
'Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) ←これを止めて、
Sub Test1(ByVal Target As Range, Cancel As Boolean) ←こうでしょうか
Activate.Worksheet("overview")
If Not Application.Intersect(Range("B3:B100"), Target) Is Nothing Then
With Target
Cnm = .Offset(, -1).Value
Pnm = .Offset(0, 0).Value
Mnm = .Offset(, 3).Value
Tnm = .Offset(, 5).Value
End With
Set ws1 = Worksheets("history")
For i = 5 To ws1.Range("B65535").End(xlDown).Row
If IsEmpty(ws1.Cells(i, 2).Value) Then
ws1.Cells(i, 2).Value = Cnm
ws1.Cells(i, 3).Value = Pnm
ws1.Cells(i, 4).Value = Mnm
ws1.Cells(i, 9).Value = Tnm
UserForm1.Show
Exit For
End If
Next i
Cancel = True
End If
End Sub
|
|