カンパ〜イ!←最初の1杯目、なに頼む?

使用機器 Win7 Office2007
教えて頂きたい内容
エクセル2007でOFFSET関数と空白欄にゼロが出ない関数の複合設定方法はありますか。
ご存知の方のお知恵を拝借申し上げます。

現在添付サンプルの画面にはOFFSET関数のみ設定してあります。累計欄のE8以降E11迄
空白欄に数字が出ています。これを数字が出ないようにしたい。

「OFFSET関数と空白に0がでない関数組」の質問画像

A 回答 (8件)

》 OFFSET関数の最大目的である「ある行を削除してもエラー表示が出ない」



それを最初に仰るべきでしたね。後出しはイヤよ、です。

E3: =IF(B3="","",SUM(OFFSET(E3,-1,),C3,-D3))
で、如何?
    • good
    • 0
この回答へのお礼

mike g様
まずエラー表示の件でお詫びを申し上げます。独学を始めたばかりでoffset関数=「ある行を削除してもエラー表示が出さない関数」と思い込んでいました。従って「ある行を削除してもエラー表示が出さないようにする」という表示は重複すると思い敢えて書きませんでした。
浅学の至り平にご容赦ください。

ご丁寧な補足説明有り難う存じました。ご指示頂きました関数を勉強しました。

結果
目的を達しました。行を削除してもエラーは出ませんでした。、お手数をかけました事、又大きな蜂に刺され病院にて治療のため、返事が遅れました事、深くお詫び申し上げ解決済みにさせて頂きます。
umiyamadai

お礼日時:2011/09/04 16:51

#5です


エラーの原因をご教示頂ければ幸甚です


かっこの位置
=IF(A4="","",INDEX(E:E,ROW()-1+C4-D4))
ではなく
=IF(A4="","",INDEX(E:E,ROW()-1)+C4-D4)
意味はOFFSET関数と同様になります
INDEX(E:E,ROW()-1)
E列と入力した行の1つ上(ROW()-1)が交わるセルを返しなさいってこと

# OFFSET関数は、計算と関係ないセルにデータを編集しただけでも計算が走ります。
# 少なくとも2003までは
    • good
    • 0
この回答へのお礼

CoalTar
ご丁寧な補足説明有り難う存じました。
ご指示頂きました関数を勉強しました。

結果
目的を達しました。行を削除してもエラーは出ませんでした。私の入力が間違っていて、お手数をかけました事、又大きな蜂に刺され病院にて治療のため、返事が遅れましたこと深くお詫び申し上げ解決済みにさせて頂きます。

kaumiyamadai

お礼日時:2011/09/04 16:32

[No.3補足]OFFSET関数を使いこなせない私なら、次の式を下方にズズーッとドラッグ&ペーストします。


参考までに。
E3: =IF(B3="","",SUM(E2,C3,-D3))

この回答への補足

mike g 様
ご教示有り難う存じました。ご教示頂いた関数をトライしました。

結果
ゼロを出さない目的は達せられましたが、OFFSET関数の最大目的である「ある行を削除してもエラー表示が出ない」という目的は残念ながら達せられませんでした。教えて頂いた関数は会計簿記帳時大変役立ちますので今後使わさせて頂きます。

ある行を削除した場合エラーが出た状況は次の通りです。プリントスクリーン画面が添付できませんので手書きで失礼します。
   A     B        C         D         E

2                 収入       支出       累計
3 9月1日 繰越金     10000               10000
4 9月1日 年会費     30000               40000
5 9月2日 集会日                5000     35000
6 9月5日 インキ代               3000    グリーンエラーマーク #REF!


上記は9月3日の寄付金5000の行を、削除した結果です。E6にエラーが出ています。
私の目的は上記項目を削除しても、E6欄に3200と表示された状態で、且つA7以降未記入欄は空白状態にすることを求めているものです。
umiyamadai

補足日時:2011/09/02 14:05
    • good
    • 0

「繰越金」が収入に入ったらまずくないかい?


E3セルは手入力として
E4セルに
=IF(A4="","",INDEX(E:E,ROW()-1)+C4-D4)
下へオートフィル で良いかと思います。

なお、OFFSET関数の多用は計算が重くなるので使わないほうが良いです。

この回答への補足

CoalTar様
早速のご教示有り難う存じました。教えて頂いた関数を設定して確認してみました
結果は次の通りです

   A      B       C       D       E
2                収入     支出     累計
3 9月1日  繰越金    10000           10000
4 9月1日  年会費    30000              0
5 9月2日  集会日            5000   グリーンエラーマーク #VALUE
6 9月3日  寄付金    5000               0
7 9月5日  インキ代           3000   グリーンエラーマーク #VALUE


E4欄入力関数は次の通りです
=IF(A4="","",INDEX(E:E,ROW()-1+C4-D4))

エラーの原因をご教示頂ければ幸甚です

umiyamadai

補足日時:2011/09/02 13:17
    • good
    • 0

こんばんは!


すでに回答は出ていますので、参考程度で・・・

E3セルに
=IF(COUNT(C3:D3),SUM(C3:D3),"")
という数式を入れておきます。
(前期・前葉よりの繰越しがあると思いますのでこのセルだけは一旦表示させておきます)

E4セルに
=IF(COUNT(C4:D4),E3+C4-D4,"")
という数式を入れオートフィルで下へコピーで大丈夫だと思います。

※ 今後データが増えても良いようにしっかり下までオートフィルでコピーしておきます。
こんなんではどうでしょうか?m(_ _)m

この回答への補足

tom04様
早速のご教示有り難う存じました
テストを行ってみました。
結果
ゼロを表示させない方法としては、ご教示賜りました方法でできましたが、OFFSET関数は設定出来ませんでした。今回の目的は、OFFSET関数とゼロを表示しない二つの複合関数を設定して、ある行を削除してもその行以下に、エラー表示が出ないようにすることを目的にしています。

ご教示頂きました貴重な情報は、実務処理上今後非常に役立ちます。大切に保存させていただきます。厚く御礼を申し上げます
umiyamadai

補足日時:2011/09/02 10:34
    • good
    • 0
この回答へのお礼

tom04様
皆様のおかげで目的を達しました。ご尊台より頂きました内容は今後大変役立ます。
大きな蜂に刺され病院にて治療のため、返事が遅れました事、深くお詫び申し上げ解決済みにさせて頂きます。
umiyamadai

お礼日時:2011/09/04 16:57

》 OFFSET関数のみ設定してあります



ほほ~、どんな「OFFSET関数のみ」なのかに興味があります。
その式の内容を教えてください。それはどのセルのものかも明記願います。

【憧憬】OFFSET関数が使えるとは、貴方は Excel の達人です!

この回答への補足

mike g様

早速のご教示有り難う存じます。
説明不足で申し訳ありませんでした。E4欄に設定してあるOFFSET関数は次の通りです。

=OFFSET(E4,-1,0)+C4-D4

E4を基準にして一つ上の行、同一列の内容を参照し、C4を加えD4を差し引いた金額をE4に表示すると解釈して設定しました。
尚、OFFSET関数は勉強を始めたばかりで、上記設定は友人から教わったもので、OFFSET関数は、現在この設定のみ理解している段階です。達人には程遠いビギナーです。
umiyamadai

補足日時:2011/09/02 07:36
    • good
    • 0

E3=IF(COUNT(C3:D3),SUM(C$3:C3)-SUM(D$3,D3),"")


としてE11までコピーする。

この回答への補足

mshr1962様
早速のご教示有り難う存じます。
ご教示賜りました内容をテストしてみました。
結果
OFFSETとゼロを表示させない関数が組み合わさって目的のものに合致しています。途中の行を削除してもエラーは出ません。
しかしどうしたことかE5欄にのみグリーンのエラーマークがついておりE6欄が40000であるべきところ45000と誤って計算されています。(E7=4200と表示されている。正=37000)
 
E5で表示される関数内容は次の通りです
=IF(COUNT(C5:D5),SUM(C$3;C5)-SUM(D$3,D5),"")

エラーの原因が解ればご教示頂きたくお願い申し上げます。
エラーが出ている画面の添付方法が解りませんので添付できません。解りにくい点ご容赦ください。
umiyamadai

補足日時:2011/09/02 11:06
    • good
    • 0
この回答へのお礼

mshr1962様
皆様のご協力を得て解決しました。ご尊台より教えて頂いた関数は更めて検証しエラーの原因を探ってみます。厚く御礼を申し上げ解決済みにさせて頂きます。
umiyamadai

お礼日時:2011/09/04 17:08

こんばんは。



まずは、E列に入れている数式を提示してください。「OFFSET関数のみ設定してあります」ではわかりませんので。

この回答への補足

M-SOFT様
早速のご教示有り難う存じます。
説明不足で申し訳ありませんでした。E4欄に設定してあるOFFSET関数は次の通りです。

=OFFSET(E4,-1,0)+C4-D4

E4を基準にして一つ上の行、同一列の内容を参照し、C4を加えD4を差し引いた金額をE4に表示すると解釈して設定しました。
尚、OFFSET関数は勉強を始めたばかりで、上記設定は友人から教わったもので、OFFSET関数は、現在この設定のみ理解している段階です。
umiyamadai

補足日時:2011/09/02 07:31
    • good
    • 0
この回答へのお礼

M-SOFT様
皆様のおかげで目的を達しました。独学のビギナーが挑戦しましたが、浅学の至りで皆様にお手数をかけました。
教わった内容はさらに復習して少しでも前に数みたいと念じています。厚く御礼を申し上げ解決済みにさせて頂きます。
umiyamadai

お礼日時:2011/09/04 17:18

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

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報