• ベストアンサー

曜日別の平均を求める元データが毎日更新される時の計算式

A列に日付、B列に曜日、CからE列に各品目の数量、F列に平均があります。 今日の日付以降は数値が空欄です。 この表を元に、曜日別の平均の表を作りたいのですが、今は =SUMIF($B$2:$B$[今日の日付までのセル番号],"月",$Z$2:$Z$[今日の日付までのセル番号]) =COUNTIF($B$2:$B$[今日の日付までのセル番号],"月") この二つの式から求めています。 この方法だと、毎日今日のデータを入力した後、範囲を更新しなければなりません。 他に簡単な方法はないでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

こんにちは。maruru01です。 >今日の日付以降は数値が空欄です。 1行目は項目名で、数値データが入っていないのなら、列全体を指定すればいいのでは? =SUMIF($B:$B,"月",$Z:$Z) =COUNTIF($B:$B,"月")

monta86
質問者

お礼

ありがとうございました。こんな簡単なことだったとは思いませんでした。もっと勉強します。

その他の回答 (1)

  • shiga_3
  • ベストアンサー率64% (978/1526)
回答No.1

日付欄がA366までとして $B$[今日の日付までのセル番号]のところを INDIRECT(ADDRESS(MATCH(TODAY(),A2:A366,0)+1,2)) $Z$[今日の日付までのセル番号] INDIRECT(ADDRESS(MATCH(TODAY(),A2:A366,0)+1,26)) としてください。なお式は、 1)MATCH関数でA列で今日と同じ日付を探してそれが上から何番目かを返し、2列目からなのでそのセルの行番号にするために1を足す。 2)ADDRESS関数で、1)を行番号とし、次に書かれた数字を列番号とする(Aを1とする)番地を文字列として(絶対参照で)出力する。 3)INDIRECT関数で、2)で文字列として示された参照の指し示す値を表示する。 という意味です。 ただし日付が文字列でなく、数値(表示形式が「日付」)であることが条件です。

関連するQ&A

  • 0を省いた 曜日別平均

    エクセルで売上管理表の作成途中なんですが、曜日別の売上&売上平均のところで困ってます。曜日別平均=SUMIF(C2:C315,"月",D2:D315)/COUNTIF(C2:C315,"月")の関数で動いたのですが、未来の日にちのセルには”0”が入っており正しい平均計が出ていません。 色々と調べて{=AVERAGE(IF(WEEKDAY($D$6:$C$36,1)=1,$E$6:$E$36))} Shift+Ctrl+Enterを押すものもも試してみましたが平均値が0になり正しく動きませんでした。どなたかアドバイスお願いいたします。

  • 画像が元のデータで、日付がA列に金額と件数が

    画像が元のデータで、日付がA列に金額と件数が D列に二段にわたり入力されています。 画像の元のデータ表から別シートの転記表に値を それぞれ計算して、転記していきたいのですが、 B列の番号が普通の番号と「★」番号に分か れているため日付ごと及び番号の種類ごとに SUMIF関数等で条件ごとに集計したいのです。 例えば、1月1日なら、通常番号(1と2)の金額を合計 して、25,000円にして転記表のB2に、件数はC2に 代入したいです。 さらに★1と★2の金額を合計して、40,000円を B3に、件数をC3に代入したいです。 転記表のスタイルはA列に日付(1/1から1/31) が入っています。B列に料金、C列に件数、いずれも二段書きです。 上段に通常番号、下段に★番号合計です。 元のデータと転記表の日付の合わせ方が分からないのと 番号の種類ごとに合計するSUMIF関数を教えてほしいです。 ちなみに日付は1月1日から1月31日まで入力されています。 お願いします.

  • 曜日別売上平均の出し方を教えてください

    エクセルで売上管理表の作成途中なんですが、曜日別の売上&売上平均のところで困ってます。 曜日別売上合計は=SUMIF(D6:D36,1,E6:E36)の関数で問題なく動いたのですが、曜日別平均の関数が判らなくて困ってます。 色々と調べて{=AVERAGE(IF(WEEKDAY($D$6:$C$36,1)=1,$E$6:$E$36))}という関数を試してみましたが動きませんでした。 どなたかアドバイスお願いいたします。

  • エクセル 合計条件が行と列の時の計算式

    エクセルで、データがはいっている”データシート”と 合計を表示させたい”合計シート”があり、 合計シートに同じ番号の品名でおなじ日付のものを合計して 表示させたいと思っています。 データシートには、以下のように品名が同じものが複数はいっています     A列 B列 C列 D列・・・・Z列これからさらにデータが増えていきます 1行目品名 4/1 4/4 4/5 2行目Z100 10  20  30 3行目Z300 40  50  60 4行目Z100 11  22  33 5行目Z200 70  80  90  ・  ・ 200行くらいデータがありこれからさらにデータが増えていきます。 合計シートもデータシートと同じような形で データシートのA列の 同じ番号&同じ日付 の数字をそれぞれセルB2からZ200まで合計した 数字を表示させたいです。     A列 B列 C列 D列・・・・Z列 1行目    4/1 4/4 4/5 2行目Z100 21  42  63 3行目Z300 40  50  60 4行目Z200 70  80  90  ・  ・ 200行目 合計シートのB2セルに入力したのですが、#VALUEエラーがでてしまい ました。 =SUMPRODUCT((データシート'!$A$2:$A$500=合計シート!$A2)*(データシート'!$B$1:$Z$1,合計シート!$B1)) SUMIFでも試してみたのですが、エラーがでてしましました。 説明が分かりにくく申し訳ないですが、どなたか分かる方いらしたら 教えてください。よろしくお願いします。

  • エクセルで日報を作成時に指定曜日のセルの色を変える

    エクセルで日報を作成しておりBに曜日を入力しております。 土曜日と日曜日だけセルの色を変更したいです。 条件書式で「土」と入力したら入力したセルの色を変更することは できたのですが列全体の色を変更したいです。 A列には日付でB列には曜日を入力した状態でA列からZ列まで指定した 色に変えるのにはどうすれば宜しいでしょうか? 曜日は短くして土曜日→土、日曜日→日と入力します。 エクセルは2010を使用しております。 以上、宜しくお願いします。

  • 日付データから曜日算出について

    お世話になります。 エクセルで、A列に日付のデータが有り、B列に =A1  として、書式設定のユーザー定義で aaa として曜日をB列に 算出しようとしましたが、うまくいきません。 うまくいかない理由は、日付データの頭に ' が入っている 為です。LEFT関数で抽出してから、コピーして値貼り付け しても ’ は消えません。一セルづつ ’をデリートすれば 消えますが、4万行ほどあり、とてもやってられません。 いい方法ないでしょうか。 お教え頂きたく宜しくお願い致します。

  • Excelでの集計表の作り方

    Excelで1ヶ月の集計表を作っていますがどうしてもわからない事があります。まず縦に1ヶ月分の日付を入れて横に純売上(B列)と消費税(C列)と総売上(D列)の表を作りました。日付は月を入力すると自動で変わる様にして月末も30日までの月は最後のセルも空白になる様に、土日祝は曜日の文字の色も変わります。その後が問題なんですが、曜日毎の集計を自動計算するだけならSUMIF関数ですぐに出来るんですが日祝の合計を1つのセルに集計させたいんです。月によって祝日の曜日も変わりますしどうしてもその方法がわかりません。説明が下手で申し訳ありませんがわかる方がいればお願いします。

  • 可視セルのみで平均を計算

    Sheet1にある表をオートフィルタで抽出し、その可視セルの三列目にある値の平均値をSheet2のあるセルに出力するマクロを作りたいのですが、どうすればいいでしょうか? ↓これがキー 番号     名前      値 027***  あそこ     12 027***  こちら     0 027***  どちら     5   ・    ・       ・   ・    ・       ・   ・    ・       ・ 右の値の平均値をSheet2に出力

  • 今の表を違う表に集計する方法を考えています。

    今、バイトの勤怠のタイムスケジュール管理表をを作成しています。 一つのファイルに月~日曜日までのシートを作成し、 バイトの名前をVLOOKUPを使い、A列に番号を書くとB列に名前が表示されるようにし、その日その人が働く時間を、時間別に区切ったC列からY列に働く時間だけ色付けし、何時から何時まで働くかを一目で分かるようにし、COUNTIFを使いその色付けしたセルの合計を合計労働時間としてZ列に表示しています。 (↑A列に社員番号を書き、働く時間帯だけセルに色付けすればZ列に時間数が表示されます。) そこで、更に、個々のアルバイトの一ヶ月の合計労働時間や平均労働時間を違う表(もしくはファイル)に集計出来ないかと考えています。 バイトのメンバーが同じであれば、その固定のセルを参照させ、別の表に表示・計算させる事は簡単に出来るのですが、毎日違ったメンバーが入りますので、セルを固定させる事が出来ません。 A列に番号が入力された人だけ、そのZ列の時間数を違う表に表示・計算させる方法はありますでしょうか?? また、白紙のテンプレートを作成しておき、 一週間の日付を入力し、日曜日まで作成出来た場合 「3月1日~7日」のように新しく保存しています。 この場合でも可能でしょうか? よろしくお願いします。

  • 関数計算

    関数計算で、A列に 2 5 4 3 6 として、4以上の数値の平均値の90%相当額を求める方法で、A列に数値入力するだけで済む方法を教えてください。 SUMIFとCOUNTIFを使ってみましたが、計算済み数値のセル番号を入れてもうまく計算されず、数値を直接入力しなければなりません。 よろしくお願いします。

専門家に質問してみよう