Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


37223 / 76732 ←次へ | 前へ→

【44682】Re:同一セルに値を加算していくには?
発言  のび  - 06/11/28(火) 18:58 -

引用なし
パスワード
   ▼りん さん:
返事ありがとうございます。
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で実行したい場合はどう書き込めばいいですか。
>
>単純にやるならこんな感じです。

0 hits

【44644】同一セルに値を加算していくには? Ron 06/11/27(月) 10:00 質問
【44645】Re:同一セルに値を加算していくには? りん 06/11/27(月) 10:31 回答
【44646】Re:同一セルに値を加算していくには? Ron 06/11/27(月) 12:46 お礼
【44647】Re:同一セルに値を加算していくには? のびくん 06/11/27(月) 15:02 質問
【44648】Re:同一セルに値を加算していくには? Kein 06/11/27(月) 15:35 回答
【44659】Re:同一セルに値を加算していくには? のびくん 06/11/28(火) 0:52 発言
【44668】Re:同一セルに値を加算していくには? Kein 06/11/28(火) 15:19 回答
【44670】Re:同一セルに値を加算していくには? りん 06/11/28(火) 15:32 発言
【44682】Re:同一セルに値を加算していくには? のび 06/11/28(火) 18:58 発言
【44684】Re:同一セルに値を加算していくには? りん 06/11/28(火) 19:12 発言
【44685】Re:同一セルに値を加算していくには? のび 06/11/28(火) 21:01 発言
【44693】Re:同一セルに値を加算していくには? Mari 06/11/29(水) 7:29 発言
【44694】Re:同一セルに値を加算していくには? りん 06/11/29(水) 8:26 回答
【44700】Re:同一セルに値を加算していくには? のび 06/11/29(水) 12:54 お礼
【44701】Re:同一セルに値を加算していくには? のび 06/11/29(水) 12:57 お礼

37223 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free