|
▼nobu さん:
>H列入力後全て計算されるのですが
>B列入力時C列計算答え E列入力時F列計算答え・・・・・
>ということができますか?
>よろしくお願いします。
>> A B C D E F G H I
>>500 200 300 150 100 15000 500 100 5
>>300 100 200 120 50 6000 300 125 2.4
>追伸ですが
>下記のように修正してみたのですが
>仮に1行目計算終了していてC1の300を一度消去した場合
>2行目の100を入れると1行目の数値も再計算されまた300という
>答えが返ってしまいます。これを行毎に計算させることは出来ないでしょうか
>また、たとえば1行目の200をdeleteした場合300も消したいと思っているのですが
>やりたいことがよくわからない
と書いていたと思います。
>> For i = 1 To x
>> If Cells(i, 2).Value <> "" And Cells(i, 5).Value <> "" _
>> And Cells(i, 8).Value <> "" Then
>> Cells(i, 3).Value = Round(Cells(i, 1) - Cells(i, 2), 2)
>> Cells(i, 6).Value = Round(Cells(i, 4) * Cells(i, 5), 2)
>> Cells(i, 9).Value = Round(Cells(i, 7) / Cells(i, 8), 2)
>> End If
>> Next
ここの部分で、2,5,8列に入力があれば、すべて再計算されてしまいます。
マクロでするより、数式ではダメなのでしょうか?
C1に「=IF(B1="","",A1-B1)」と入力し必要なだけフィル
FIに「=IF(E1="","",D1*E1)」と入力し必要なだけフィル
I1に「=IF(ISERR(ROUND(G1/H1,2)),"",ROUND(G1/H1,2))」と入力し必要なだけフィル
これだと、再計算されず、計算を自動にしていれば、望むものになると思いますが・・
数式は、苦手なので間違いがあるかも??
|
|