[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『同一セル内での計算と内訳表示』(tasuketeman)
いつもお世話様です。また教えてください。
例えば果物の数の合計を出すときはりんご10個、バナナ5本と言う資料を見て電卓で足し算をして、合計15という数字を出し、セルに15を入力し、内訳は別途資料にまとめておりました。
これを
10プラス5と言う計算を直接セル内で行いたい
例えばあるセルに10を入力し、エンターを押し続いて5を入力するなどして、答えの15が直接セルに表示されるようにしたいのです。またなんらかの操作をすると10とか5の内訳数字も見れるようにしたいのですがよろしくお願いします。
セル内で +10+5 と入力します。 (みやほりん)
ついでなので、類似(入力した数値を同じセルに別の値にして返す)の ログを調べてみました。まだあるかもしれませんが。 [[20040928092709]] 『セル内の自動計算』(MARU) [[20040909143826]] 『同一セル内での累積の計算』(匿名) [[20040824140317]] 『セルに数字を何度も入れ合計出来る方法を』(じゅじゅ) [[20040716165711]] 『セルに数字を入力すると、税込表示に・・・』(キリキ) [[20040716102605]] 『かけ算に関して』(ナミ) [[20040712144236]] 『数値の累積』(ガクセイサン☆) [[20040609110342]] 『同一セルで定価の80%を自動計算』(ひろりみ) [[20040612114856]] 『セルの中で計算』(のぞみ) [[20040131111956]] 『セル内の和』(mutsu) [[20031126105334]] 『別に加算合計を出したい』(じゃじゃ子) [[20031012162017]] 『毎回同一セルに数字を入力して加算できるように』(事務) [[20020530145644]] 『電卓みたいな計算できますか?』(事務員です) (みやほりん)
A1 に入力 B1 に表示の場合。
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count <> 1 Then Exit Sub If Target.Address <> Range("A1").Address Then Exit Sub
Range("B1").Value = Range("B1").Value + Target.Value Target.Select End Sub
が大変役に立ちました。ところでこの場合、何とかA1に何と何と何・・を足したのかその経緯がわかるようにする方法を教えてください。
例えば1と2と3をA1に入力してB1に答えの6が表示されたとします。
何らかの操作をして、A1内(別にどこにでもよいのですが)に1と2と3を足したという経緯を表示させたいのですが教えてください。
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count <> 1 Then Exit Sub If Target.Address <> Range("A1").Address Then Exit Sub
Range("B1").Value = Range("B1").Value + Target.Value Select Case WorksheetFunction.CountA(Range("C:C")) Case Is = 0 Range("C1") = Target.Value Case Is > 0 Range("C65536").End(xlUp).Offset(1, 0).Value = Target.Value End Select Target.Select End Sub Select Case 〜 End Select が追加部分。 C列に入力履歴を残す例です。 他の列に残す場合は Range("C:C") Range("C1") Range("C65536") を任意の列番号を任意のものに書き換えてご使用ください。 (みやほりん)
C列に履歴を残し、なおかつ、C列の修正で合計値を 変更できるようにするのが希望であれば、 最初からC列へ計算したい数値を入力していって、 B1へSUM(C:C)などとしておけばよいのではありませんか? 入力するセルを一つに固定しようとされる方の意図が (過去ログも含めて)私には理解しきれません。 一応、以下のように修正すればご希望には添います。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count <> 1 Then Exit Sub If Target.Address = Range("A1").Address Then
Range("B1").Value = Range("B1").Value + Target.Value
Select Case WorksheetFunction.CountA(Range("C:C")) Case Is = 0 Range("C1") = Target.Value Case Is > 0 Range("C65536").End(xlUp).Offset(1, 0).Value = Target.Value End Select
Target.Select
ElseIf Target.Column = 3 Then
Range("B1").Value = WorksheetFunction.Sum(Range("C:C")) Target.Select
End If End Sub (みやほりん)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.