プロが教える店舗&オフィスのセキュリティ対策術

例えばA1,B1,C1のセルが以下のようになっていて、

 [ 20 ][ 30 ][ 40 ]

D1のセルに式を書く事で、A1,B1,C1の表示を10倍にしたり20倍にしたりしたいのですが、

 [ 200 ][ 300 ][ 400 ][ 式 ] (10倍の例)

そのような事は可能ですか。

A1,B1,C1セルには値だけが書かれていて、これらのセルは変更したくありません。
D1の式を弄るだけで、A1,B1,C1の値が指定した倍率になって表示されるようにしたいです。
D1の式を削除すれば、元通り[ 20 ][ 30 ][ 40 ]が表示されてほしいです。

D1にかける数を入れておいて、各セルに[ =20*D1 ][ =30*D1 ][ =40*D1 ] とするのは避けたいです。
(このような列がたくさんあるので)

よろしくおねがいいたします。

A 回答 (5件)

もしかしてこれでも良いの?



A1に =20*IF(D1=0,1,D1)
B1に =30*IF(D1=0,1,D1)
C1に =40*IF(D1=0,1,D1)
    • good
    • 0
この回答へのお礼

御回答ありがとうございます。
今回の場合、A1,B1,C1は変更したくないという条件です。

お礼日時:2013/03/09 13:54

A1,B1,C1それぞれのセルの値のベースを20,30,40としておいて倍率によって値を更新したい、ということですが、


数式を入れないで各セルの値が更新されていくと、20,30,40を覚えておくことがそもそもできないですし、
どう考えても無茶な注文です。

ただし、VBAマクロなどを使うことを考えればできるかもしれません。

D1の式が変更されたことをトリガーとしてマクロが動作するような仕組みです。


Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$D$1" Then
Cells(1, 1).Value = 20 * Cells(1, 4).Value
Cells(1, 2).Value = 30 * Cells(1, 4).Value
Cells(1, 3).Value = 40 * Cells(1, 4).Value
End If

End Sub


上記は、よく考えずにさっと書いたので、式を削除したときに戻す処理まで書いていませんが。
    • good
    • 0
この回答へのお礼

詳細な御回答ありがとうございました。
試してみます。

お礼日時:2013/03/09 13:53

結果がどうなるのか書いておいたほうがわかりやすいです。



E1,F1,G1
に表示はできます。
    • good
    • 0
この回答へのお礼

御回答ありがとうございました。

お礼日時:2013/03/09 13:52

D1のセルに式を書く事で、A1,B1,C1の表示を10倍にしたり20倍にしたりしたいのですが


>>不可能です。
    • good
    • 0
この回答へのお礼

簡潔な御回答ありがとうございました。

お礼日時:2013/03/09 13:51

A1,B1,C1のセルに数字だけ入力して、D1のセルの式だけでご質問の結果を満足させる事は出来ません。

    • good
    • 0
この回答へのお礼

簡潔な御回答ありがとうございました。

お礼日時:2013/03/09 13:51

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