この人頭いいなと思ったエピソード

恐らくこんなことは出来ないだろうと思いますが、ご教授下さい。
草野球の成績管理をエクセルで行っているのですが、
前試合までの成績が下記の通り入力されているとします。
   A   B   C   D   E   F
1 打数 安打 打点 四死球 三振 打率
2  3   1   0   0    1  .333
新たに試合が行われ、その成績が4打数0安打0打点0四死球1三振だとします。
成績を更新する際、いつも頭の中で「打数は3+4=7だな」と
考えながらA2セルを「7」と入力していくのですが、
A2セルに4を入力すると自動的に加算され、7が表示されるという方法はあるのでしょうか?
自分なりに調べてみたのですが分からず・・・宜しくお願いします。

A 回答 (2件)

通常であれば、別途データのシートを作成します。


   A   B   C   D   E   F
1 試合日 選手名 打数 安打 打点 四死球 三振 打率
2 11月4日 阿部  3   1   0   0    1  .333
・・・・
集計のシートには SUMIF関数で選手ごとの合計がでます。
入力の間違いもわかりますし、他にも活用方法があるかもしれません。
    • good
    • 0
この回答へのお礼

なるほど!SUMIF関数がありましたね…!
ぜひこの方法でやっていきたいと思います。ありがとうございました。

お礼日時:2008/11/21 12:51

マクロで実現することは出来ます。



シートモジュールに、こう書けば良いです。

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Not Intersect(Target, Me.Cells(2, 1).Resize(, 5)) Is Nothing And IsNumeric(Target.Value) Then
Application.Undo
Dim x
If IsNumeric(Target.Value) Then
x = Target.Value
End If
Application.Undo
Target.Value = Target.Value + x
End If
Application.EnableEvents = True
End Sub

このままだと、加算し続けて、リセット用に別のマクロを組む必要があるのですが、書き込まれている値か、書こうとしている値が、文字列の場合は、加算しないようになっているので、数字以外の適当な文字を書いて削除すると、0になります。

これ、理解できていないと、たぶん改造は出来ないと思います。
    • good
    • 0
この回答へのお礼

ご丁寧な説明、誠にありがとうございます。
マクロですか…一度かじりかけたのですが訳分からず…という状況なので、正直全然分かりません、ごめんなさい。
ただ、今後マクロを勉強していくとしたらぜひ参考になりますので、ご活用させていただきます。ありがとうございました。

お礼日時:2008/11/21 12:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!