|
▼りん さん:
返事ありがとうございます。
Changeイベントを抜ける場合は例えばESCキー等で
できないでしょうか。よろしくお願いします。
>>>
>>>>セルに値を入力したあと、もう一回同じセルに値を入力すると上書されます。
>>>>上書しないで新しく入力するたびにそれまで入力済みの値に加算合計を表示する
>>>>(電卓のように)ようにしたいのですが、どのようにすればいいでしょうか。
>>>>よろしくお願いします。
>>>
>>>Changeイベントで見張って、セルに数値が入力されたら戻してから加算。
>>>
>>>Private Sub Worksheet_Change(ByVal Target As Range)
>>> Dim dt As Variant
>>> With Target
>>> If .Count = 1 Then
> If .Address = "$A$1" or .Address = "$C$5" Then
>>> If IsNumeric(.Value) Then
>>> Application.EnableEvents = False
>>> dt = .Value
>>> Application.Undo
>>> If IsNumeric(.Value) Then
>>> .Value = .Value + dt '加算
>>> Else
>>> .Value = dt '元が文字列とかの場合は上書き
>>> End If
>>> Application.EnableEvents = True
>>> End If
> End If
>>> End If
>>> End With
>>>End Sub
>>>
>>>こんな感じです。
>>>特定のセルのみで処理したい場合は、Targetの位置を判定する分岐を入れてください。
>>
>>分岐?
>>たとえばA1とC5で実行したい場合はどう書き込めばいいですか。
>
>単純にやるならこんな感じです。
|
|