プロが教えるわが家の防犯対策術!

エクセル2000で教えて下さい。
ABCDの列に任意の数字が入ります。
例えば
    A   B   C   D
1  -10 -20 -30  60
2   50 -30  0  -20
3   10  30 -25 -15

のように同じ行で4つのセルをプラスマイナスすると等しくなります。
数値の入力は小さい数字(マイナスの大きい数字)から順番に入力されていきます。
最後に一番大きい数字が入るように式を入れたいのです。
例で言うと1行目ではD1、2行目ではA2、3行目ではB3の答えが自動で入るようにしたいのです。
列は4列のみです。マイナスの数値は最低でも1つ入ります。
  

A 回答 (4件)

VBAを使わないと出来ないと思います



作業列としてE,F列を使います
E1=COUNT(A1:D1)
F1=-SUM(A1:D1)
とし、必要なだけ下にコピーしておきます
VBAは、シートのChangeイベントに記述します
---------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
  If Cells(Target.Row, 5) = 3 Then
    Application.EnableEvents = False
    For c = 1 To 4
      If Cells(Target.Row, c) = "" Then
        Cells(Target.Row, c) = Cells(Target.Row, 6)
      End If
    Next
    Application.EnableEvents = True
  End If
End Sub
    • good
    • 0
この回答へのお礼

御礼が遅くなり申し訳ありませんでした。
大変参考になりました。
有難うございました。

お礼日時:2006/12/28 20:47

E列に数式を設定


=SUM(A1:D1)
以下のようなマクロを記述

Sub 答え()

i = 0
j = 0

For i = 1 To 3
For j = 1 To 4
X = Cells(i, 5)
If Cells(i, j) = "" Then '空白セルを探す
Cells(i, j) = -X
Cells(i, j).Select
With Selection.Interior '黄色づけ
.ColorIndex = 6
.Pattern = xlSolid
End With
End If
Next
Next
End Sub
こんなのはいかがでしょう
    • good
    • 0
この回答へのお礼

御礼が遅くなり申し訳ありませんでした。
大変参考になりました。
有難うございました。

お礼日時:2006/12/28 20:47

>小さいほうから順番に3つ入れると


この「順番」というのは、数字が小さい方からという事ですよね
この場合、入れる位置(セル)の順番はどうなっているのでしょうか
「適当に」という事でしょうか?
    • good
    • 0
この回答へのお礼

>この「順番」というのは、数字が小さい方からという事ですよね
はい。その通りです。

>この場合、入れる位置(セル)の順番はどうなっているのでしょうか
>「適当に」という事でしょうか?
実際にはあるデータに基づいて入力するのですが、この表だけ見れば
おっしゃるように適当に入れるというか、その都度順不同という事に
なると思います。

お礼日時:2006/12/28 00:22

>例で言うと1行目ではD1、2行目ではA2、3行目ではB3の答えが自動で入るようにしたいのです。



この、D1,A2,B3 の位置は固定なんですか?
    • good
    • 0
この回答へのお礼

早々に御回答頂き有難うございました。

>この、D1,A2,B3 の位置は固定なんですか?
いいえ違います。
どのセルかは決まっていません。
ただ小さいほうから順番に3つ入れると4つ目のセルに自動で数値が
入るようにしたいのです。

お礼日時:2006/12/27 23:31

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