エクセルの関数を使って分類の累計を自動表示する方法
- エクセルの関数を使って分類の累計を自動的に表示する方法を教えてください。
- 上記の表で、納品日が発注日よりも前の場合に関数を使って分類の累計を自動表示する方法を教えてください。
- エクセルの関数を利用して、特定の条件を満たす場合に分類の累計を自動的に表示する方法を教えてください。
- ベストアンサー
エクセルの関数について
以下の内容をエクセルの関数を使って解決したいのですが、教えていただきたいと思います。 A B C D E F 1 分類 番号 発注日 納品日 金額 累計 2 1 1 4/1 4/8 1000 3 2 2 4/1 4/9 2000 4 1 3 4/4 4/9 1500 0 ※ 上の表で、分類の累計 F4が、「0」になっています。 もし、D2の納品日が、C4の「4/4」以前の日付、「4/3」などに なっていた時、関数などを利用して、F4に、E2の1000が自動 的に表示できるようにしたいのですが全くわかりません。 良い方法があれば教えていただきたいです。
- kyaravan1
- お礼率57% (8/14)
- 財務・会計・経理
- 回答数5
- ありがとう数3
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>F4に表示させるのは、A列の分類のものの累計にしたいのです。 それでしたら、次の様な関数として下さい。 =IF(AND(INDEX($A:$A,ROW())<>"",ISNUMBER(1/DAY(INDEX($C:$C,ROW())))),SUMIFS($E:$E,$A:$A,INDEX($A:$A,ROW()),$D:$D,">=1",$D:$D,"<="&INDEX($C:$C,ROW())),"") 尚、「『4/4』以前」に「4/4」を含めない場合には、次の様な関数にして下さい。 =IF(AND(INDEX($A:$A,ROW())<>"",ISNUMBER(1/DAY(INDEX($C:$C,ROW())))),SUMIFS($E:$E,$A:$A,INDEX($A:$A,ROW()),$D:$D,">=1",$D:$D,"<"&INDEX($C:$C,ROW())),"") 但し、SUMIFS関数はExcelのバージョンがExcel2007以降でなければ使用出来ません。 ですから、もし、質問者様が御使いのExcelのバージョンがExcel2007よりも前のものである場合には、又回答させて頂きますので、その旨を御補足願います。
その他の回答 (4)
- kagakusuki
- ベストアンサー率51% (2610/5101)
>他の部分の式の構成が悪いのか、表が大きすぎるのか(100列400行程度)、処理速度が極端に落ちてしまいます。 他のセルに入力されている式がどの様なものなのか情報が無いため、他のセルに入力されている式のせいもあるのかどうかは判りませんが、少なくとも表が大きすぎる事が大きな原因になっている様に思われます。 100列×400行の表ともなりますと、4万個のセルで構成されている事になり、もし、その大部分に関数が入力されているとしますと、どこかのセルの値を変更する度に、パソコンは4万回近くの計算を行わねばならない事になりますから、処理が重くなるのも致し方がない事だと思います。 それと、他のセルに入力されている関数の中に、もし、SUMPRODUCT関数が使用されている関数がある場合には、SUMPRODUCT関数は繰り返し計算を行う関数ですので、処理が重くなりがちになります。 尤も、SUMPRODUCT関数による処理の重さが顕著になるのは、パソコンの性能にもよって異なるものの、1000行を超えた辺りからですから、400行程度であれば、例えSUMPRODUCT関数を使用していたとしましても、処理が極端に重くなる事の主因にはならない様な気が致します。 同様に、配列数式を使用している場合にも、繰り返し計算が行われますので、処理が重くなる傾向があります。 この他にも、SUMPRODUCT関数程ではないものの、MAX関数、MIN関数、SMALL関数、等の一部の統計関数は、他の関数と比べますと、少し処理が重いようです。 とは言え、先に述べました様に、主な原因は表が大きすぎる事ではないかと思います。
- kagakusuki
- ベストアンサー率51% (2610/5101)
まず、F2セルに次の関数を入力してから、F2セルをコピーして、F3以下に貼り付けてみて下さい。 =IF(ISNUMBER(1/DAY(INDEX($C:$C,ROW()))),SUMIF($D:$D,">1",$E:$E)-SUMIF($D:$D,">="&INDEX($C:$C,ROW())+1,$E:$E),"") 尚、「『4/4』以前」に「4/4」を含めない場合には、次の様な関数にして下さい。 =IF(ISNUMBER(1/DAY(INDEX($C:$C,ROW()))),SUMIF($D:$D,">1",$E:$E)-SUMIF($D:$D,">="&INDEX($C:$C,ROW()),$E:$E),"")
補足
皆さん教えていただいて、有難うございます。 一歩進んだ気がします。 あと一つ、私の説明が足りなかった部分がありました。 F4に表示させるのは、A列の分類のものの累計にしたい のです。したがって、この場合、A4は1ですので、過去 の分類「1」についての累計のみを表示させられないか ということになります。言葉足らずですみません。
- hue2011
- ベストアンサー率38% (2800/7250)
CとDが日付型と設定されている場合、F2に計算式で =IF(DAYS360(C2,D2,TRUE)>0,+E2,0) とすればいいでしょう。 あとは、F2をコピーして、F2,F3,F4・・・にペーストすればいいだけです。
お礼
早速ありがとうございます。 チャレンジしてみます。
もし、なになにという設定での関数ならif関数を使えばいいのですが。 d2<c4 `e2` f4をアクティブにして。
お礼
早速ありがとうございます。 使ってみます。
関連するQ&A
- エクセル関数について
エクセル関数について教えてください シート1(発注書)のe2に東京店・e3に神奈川店・e4に千葉店 シート1(発注書)のf2に0001・f3に0002・f4に0003と書いてあるとして シート2(納品書)のb12に東京店と貼り付けたら、b8に0001と出るようにしたいのですが、やり方が解りません。 エクセル初心者ですので、簡単なやり方があれば教えて下さいよろしくお願い致します
- ベストアンサー
- オフィス系ソフト
- エクセルの関数で。
エクセルで例えば 例えば セル A1 B1 C1 D1 E1 F1 状態 購入日 有効期限 超過 回収日 ステータス 発送 2013/01/28 2014/02/01 3日 2014/02/03 完了 上記のような項目が入っているエクセルブックがあり、 (1)D1にはB1の日付を入力するとC1に自動的に1年後の日付が入るように関数を設定 (2)またC1がTODAYを過ぎた場合、D1に何日超過しているかわかるように関数を入れています。 知りたいのはE1に日付が入った場合D1は自動的に日付が消えるようにする、そういった設定が出来るものでしょうか?手で消せばいいというのはごもっともなご意見ですが、数が多いと消しこみ忘れを防ぎたいので、可能ならそういった設定をしたいのです。 また、F1にステータスが完了という文字が入った場合、その行をグレーアウトさせる書式設定の方法もご存知であれば是非教えていただけないでしょうか。宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセル2003及び2010の関数の使い方
エクセルで月ごとの予定表を作成しています。 B列 2行目に今年の数字2014、月はE列1行目予定の表は、B列3行目に日、C列3行目に曜日、D列3行目、E列3行目、F列3行目の3列のセルを結合して予定を記入しています。 B列4行目より関数を下記の通り作成しています。 今年の年は、B2に記入しています。 =DATEVALUE(B2&”/”&E1&”/1”)によりE1に月の数字1とか2を入力すると自動的に C4に曜日が出力されるようにしましたが、これで良いのでしょうか。 またD E Fの結合したところに定期の水曜日なら休館日とか月曜日なら10時からとか出力するにはどの関数を作成すればよいのか、エクセル2003と2010それぞれ、教えて下さい。 宜しくお願いします。
- ベストアンサー
- Excel(エクセル)
- 【エクセル】 関数などを使ったデータ抽出方法について教えてください
エクセルでデータ抽出方法について教えてください ↓見づらくてすいません。 行/列|A|B|C|D|E|F 1|品番|商品分類|進捗状況|担当者|(仮)受注日|納品予定日 2|k-101|スピーカー|納品済|鈴木|2007/10/20|2007/10/31 3|t-550|コード|受注|鈴木|2007/10/21|2007/10/28 4|h-890|ジャック|受注|佐藤|2007/10/22|2007/11/02 実際のデータは列(項目)がAZまで、行は500位まであります データが重複することがある [品番]がない場合もある 上の表からC列の[進捗状況]ごとに別表にしたいのです。 ([受注]だけの表や[納品済]だけの表がほしい) 別表の条件は 1. 「品番」「商品分類」「納品予定日」の項目だけ (その他のデータはいらない) 2. できたらリアルタイムで更新される (「進捗状況」を変えたら自動で別表もで更新される) 関数などで別表にできる方法があったら教えてください。 お願いします。
- ベストアンサー
- オフィス系ソフト
- エクセル関数で可能でしょうか?
エクセル関数で下記のような自動計算が可能か教えて下さい。 発注伝票のチェックのためにシート1のA列に連番で発注番号があり B列に日付・C列に金額・・・というふうなデータがあります。 このファイルのシート2の特定セルに発注番号を入力したら指定したセルにその発注番号の金額を表示したいのです。 現在INDEX(Sheet1!A:AA,(MATCH(Sheet2!D1,Sheet1!A:A,0)),3) の計算式を作ったのですが、同じ発注番号が複数ある場合は最初の物しか金額を引張って来ないため行き詰っています。 発注番号が複数あった場合、その該当番号すべての金額合計を求める関数式は可能でしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセル関数について質問です!!
エクセル関数に関する質問です。商品入荷情報を一目で分かりやすい表を2タイプ作成したいと考えております。1つ目は縦列に商品、横列に行動、交わったところが実行日。例えばA商品を発注した日が2月1日とすると、(縦列)A商品と(横列)発注の交わったところに実行日2/1を入力するもの。そして2つ目はカレンダー形式で、何日に何(商品)がどうした(実行)が分かるもの。ここまでは通常の表を作成するだけですが、問題は1つ目の表で日付を入力し、自動的に連動して2つ目の表の2月1日のところに『発注』と入れれるように出来ればと考えています。こんなわがままな関数はあるでしょうか?ご存知な方教えてください!!!
- ベストアンサー
- オフィス系ソフト
- 関数での実績表の作成方法について
いつもありがとうございます!よろしくお願いいたします。 下記の表(1)があり、その数字を抜き出して下記表(2)を作成したいのですが、 どのような方法があるか、お知恵を拝借できれば幸いです。 表(1) A B C D E F 1 発注NO. 2 発注日 納入先 納入日 3 製品名(1) 数量 4 製品名(2) 数量 5 製品名(3) 数量 A1に発注NO.、C2に発注日、D2に納入先、E2に納入日、B3に製品名(1)、 F3に数量、B4に製品名(2)、F4に数量、B5に製品名(3)、F5に数量… というデータが1セットで、発注NOごとに入っています。 製品名(4)まであり、(1)と(3)のみだったり、データにより違います。 この表を 表(2) A B C D E 1 製品(1) 製品(2) 製品(3) 製品(4) 2 日付 数量 数量 数量 数量 3 日付 数量 数量 数量 数量 4 日付 数量 数量 数量 数量 ・ ・ という状態にしたいのですが、出来ればマクロでなく、関数のみで 作りたいと思っています。 色々やってみましたがうまく変換出来ません。 どのような関数で抽出を行ったらいいのか、アドバイス頂けませんで しょうか?よろしくお願いいたします!
- 締切済み
- Excel(エクセル)
- エクセル関数 何を使えばいいか教えてください
初心者なもので作成中の資料に関数等を使ってスムーズに表示したいと考えています どなたかお知恵を貸して下さいますようお願いします。 出来れば本日中に頂けると有難いです。 内容 表1 表2 累計 実数 累計 実数 A 1 ? A 3 ? B 2 ? ⇔ B 2 ? C 3 ? C 1 ? D 4 ? D 1 ? 上記のようなエクセルシートがあります。 ・実数値を求めます(普通は引き算すればいいのですが…) ・行Aから行D 及び 累計と実数は固定です ・表1は行Aから下へ累計値を入力 表2は行Dから上へ累計値を入力 上下両方の入力方法に対して対応できる関数式を教えてください。 説明が下手なのですみません
- 締切済み
- Windows XP
- Excel : 関数での分岐
こんにちは。よろしくお願いします。 エクセルで英単語帳を作ったのですが、復習すべき日にちを決めるとき、D列に今日の日付、E列に1~7の整数、F列に関数を入れるとして、 1→1日後にやる 2→3日後にやる 3→5日後にやる 4→7日後にやる 5→13日後にやる 6→30日後にやる 7→60日後にやる というような設定を、IF関数を使って =IF(E2=1,D2+1,IF(E2=2,D2+3,IF(E2=3,D2+5,IF(E2=4,D2+7,IF(E2=5,D2+13,IF(E2=6,D2+30,IF(E2=7,D2+60,"入力し直し"))))))) のようなことやっているのですが、こういう関数の使い方は、壊れやすい(暴走しやすい)のではないかと不安です。(今のところ普通に動いてはいます。) このままデータが増えればこわれる可能性はあるのでしょうか。 また、関数を使ったもっと賢い方法があるのでしょうか。 マクロのことは分からないのでそれを使わない方法で、 関数だけを使ったより良い方法があれば教えてください。 分かりにくい文章ですいません。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセル関数について
エクセルでタイムカードを入力しなければならないのですが、「C1に1」を入力したら「D1に2 E1に3 F1に4」と自動的に入力されるようにしたいのですが、エクセル関数で可能でしょうか。 回答宜しくお願い致します。
- 締切済み
- オフィス系ソフト
お礼
有難うございました。 なんとか予定の表(20列100行程度)ができました。 大変参考になりました。
補足
今、教えていただいた方法で、さらに大きな表を作りかけていますが、他の部分の式の構成が悪いのか、表が大きすぎるのか(100列400行程度)、処理速度が極端に落ちてしまいます。色々な分析式やマクロ式を入れようとしているからですね・・・? 頑張ってみますが・・・。