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

下記のグラフの数式について教えて下さい。%部分は割引率です。
-----D----|----E-----F-----G----|
5|--定価--|---10%---20%---30%---
6|\7,000---|
7|\12,000--|
8|\13,000--|
9|\8,600---|
10|\4,200---|
11|\4,200---|
12|\13,000--|
13|\7,500---|
14|\4,300---|
15|\7,800---|
16|\6,800---|

セル【E6】に定価を10%割り引きした数式を作り、オートフィルを使って
表を完成したいのですが、

=D6*(1-E$5)

としてオートフィルを行うと10%の【E列】はうまくいくのですが、それ以外の列は、
おかしな数値になってしまいます。

【D列】は【D6】、【D7】、【D8】・・・と変化するので「D」の前に「$」をつけなくても
大丈夫と思ってたのですが、どうしてうまくいかないのでしょうか。
【D列】以外は定価欄がないのに・・・

これとはまた別の、例えば「予算達成率(合計/予算)」などを求める表は絶対参照は必要
なく求められました。

何が違うのでしょうか。

列を固定したままで、行だけ変えて数式を作りたいとき、または行を固定したまま列を変えて
数式を作りたいとき、固定したいものについて「$」をつけるという考え方は間違って
いるのでしょうか。

よろしくお願いします。

A 回答 (7件)

=$D6*(1-E$5)



でどうですか?
考え方は間違っていません。

この回答への補足

ありがとうございます。
=$D6*(1-E$5) 答えはこうなるのですが、
Dの前に「$」をつける意味がわからないんです・・・
D列を固定しなくてはならない理由がわかりません。

数式を作るとき、列が変わらなければ「$」をつけなくてもいいのではないかと思うんですよ。

「予算達成率」を求めるときも、他に列(売上構成比の列etc・・・)があったとしても、
わざわざ固定しなくても数式は作ることができたし、オートフィルもできました。

どこかわかってないとこがあるんだとは思いますが、何が間違っているのかわからなくて・・・

よろしくお願いします。

補足日時:2007/01/31 11:36
    • good
    • 0

>としてオートフィルを行うと10%の【E列】はうまくいくのですが、それ以外の列は、


>おかしな数値になってしまいます。
セルE6に式を入力して、E6からG16まで貼り付けていませんか?
その場合、式は、
=$D6*(1-E$5)
となります。

>「D」の前に「$」をつけなくても大丈夫と思ってたのですが、
E列はこれでも大丈夫ですが、
F、G列は、これではそれぞれ前の列を参照します。

この回答への補足

ありがとうございます。
ちょっとひっかかる部分があるのですが・・・

>F、G列は、これではそれぞれ前の列を参照します。

初めて聞きました。G列はD列を参照しないのですか?

よろしくお願いします。

補足日時:2007/01/31 11:45
    • good
    • 0

数式をコピーする場合、相対参照セル($なし)はエクセルが自動的に変位(行方向なら行番号、列方向なら列番号)させます。


従って、=D6*(1-E$5)を下方向にコピーする場合は、行番号部分が変位し、=D7*(1-E$5),=D8*(1-E$5)・・となりますが、右方向にコピーすると=E6*(1-F$5)、=F6*(1-G$5)となるからです。
    • good
    • 0
この回答へのお礼

ありがとうございます。
>右方向にコピーすると=E6*(1-F$5)、=F6*(1-G$5)となるからです。

なるほど!この部分がよくわかってなかったみたいです。
とても参考になりました。ありがとうございました。

お礼日時:2007/01/31 14:12

D列を固定にしなければ、オートフィルで列を移動させた場合、


E、F、G・・・と進んでしまいます。
E6、F6、G6には値は入ってませんよね。固定にしなければなりません。
    • good
    • 0
この回答へのお礼

たびたびありがとうございます。
>E6、F6、G6には値は入ってませんよね。固定にしなければなりません。

あ、なんかわかるような感じがします。
この場合たしかにD欄を固定しなければ数式は成り立ちませんよね。

参考になりました。ありがとうございました。

お礼日時:2007/01/31 14:16

もう正解は出てるんですが納得できませんか?


縦方向のコピーでしたら
E6=D6*(1-E$5)
でE7,E8とコピーしても大丈夫ですが
横方向にF6,G6とコピーする場合
Dの前に$がないと列が固定されていない為
F6=E6*(1-F$5)
G6=F6*(1-G$5)
になります。これを
F6=D6*(1-F$5)
G6=D6*(1-G$5)
と直せばかまいませんが、計算対象がD列で固定なら
E6=$D6*(1-E$5)
とすれば修正しないで計算してくれます。
    • good
    • 0
この回答へのお礼

ありがとうございます。
みなさんのおかげで納得しつつあるところです(^^;

別の数式としてG6=D6*(1-G$5)というのは気がつき
ませんでした。
ほおおお~となるばかりです。

参考になりました。ありがとうございました。

お礼日時:2007/01/31 14:21

#2です。


>G列はD列を参照しないのですか?
この場合は、しません。
「$」をを付けた場合を絶対参照、
「$」をを付けない場合を相対参照といいます。

過去の質問に「相対参照と絶対参照の使い分け」とありますので、
参考にしてください。
http://oshiete1.goo.ne.jp/qa2708408.html
    • good
    • 0
この回答へのお礼

ありがとうございます。

前回の質問もとても参考になり、ぼんやりわかったつもりで
いたのですが、実際にテキストの問題を解いてみると
手が止まってしまったんですよ・・・
みなさんのおかげでだいぶ理解も深まりました。
とても感謝しております。

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

お礼日時:2007/01/31 14:23

またまた#1です。



何を勘違いしているか分かりました。
『列が変わらなければ「$」をつけなくてもいい』
これがもし成立していたら、E5の5の前に$が必要ないという事になってしまいます。
本当は
『列を変えたくないから「$」をつける』
です。

オートフィルを行う時、数式は、列に伸ばせば列が、
行に伸ばせば行が自動的に移動します。

行にしか伸ばさないのであれば『列が変わらないので「$」をつけなくてもいい』になります。
これは、列が変わらない事が前提ですよね。
今回は列も伸ばすので、『列を変えたくないから「$」をつける』になります。
    • good
    • 0
この回答へのお礼

ご丁寧にありがとうございます。

>E5の5の前に$が必要ないという事になってしまいます。

ホント、そうですよね。なんでこんなことに気づかなかったんだろう。

>行にしか伸ばさないのであれば『列が変わらないので「$」をつけなくてもいい』になります。

この一言で、他の「予算達成率」についても理解できそうです。

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

お礼日時:2007/01/31 14:30

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