初心者に手ほどきをお願いいたします。

A列一番上(A1)から順に、2001/1/1、2001/1/2…と一年分の日付が既に入っています。
B列にはこれら日付に関連するデータ(数値)も既に入っています。
これを年間を通して『曜日別』にてデータを集計したいのです。
例えば、1(日曜日)=56件、2(月曜日)=76件…というような感じの一覧表にしたいのです。
どのようにすれば集計できるのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (2件)

C列は空いているとします。


 C1に=WEEKDAY(A1) として下にコピーします。曜日を計算しています。(日曜日=1)

例えば、E2=1、E3=2、E4=3、E5=4、E6=5、E7=6、E8=7 と入力します。
 F2 = SUMIF($C$1:$C$365,"="&E2,$B$1:$B$365) としてF8までコピー

E2:E8を選択して、セルの書式設定で表示形式→ユーザー定義で aaaa とします。


1行目から入力されているようですが、先頭行を項目名にしておくと、
集計、統合、ピボットテーブルなどの機能で(操作しやすくなる意味もあります)集計できます。
Help等で調べてみてはどうでしょうか。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
>C1に=WEEKDAY(A1) として
で、『=』を打ち込むとは思わずに、それ以外の部分を入力して、『何で計算されないのかな…』などと思っていましたが、無事解決できました。
回答中断に書かれている計算式については、意味が分かりませんでした…(トホホ…)
ユーザー設定でもaaaaが見つからず(無い?)、困ってしまいましたけど、無いとか解決でき、集計もうまく行けました。
ありがとうございました。

お礼日時:2002/01/27 14:21

weekdayという関数使えばよいのではないのでしょうか?使い方は曜日を入れたい欄をクリックし挿入を選び関数を選択します。

そのなかにweekdayという関数を使います。関数をクリックしたら、シリアル値に日付がはいっている欄をクリック種類に適当な数字をいれればOKです。1-7の数字が自然に入ると思います。試してみてください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
実は関数でweekdayがあることは知っていたんですけど、ヘルプを見ても使い方がよく分からなかったのです。
今回教えられたことで、使い方まで分かり、感謝しております。
たいへんありがとうございました。

お礼日時:2002/01/27 14:24

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

このQ&Aと関連する良く見られている質問

Qエクセルで、A列に日付をB列に曜日、C列からF列までにデータを入れるよ

エクセルで、A列に日付をB列に曜日、C列からF列までにデータを入れるように作成しています。
条件付書式で土日祭日の場合はC列からF列に色を表示させています。
この色付セル(土日祭日)の場合にはデータ入力が無いので自動で0を表示させ、なおかつデータ入力が出来ないようにしたいのですが、そのようなことは出来るでしょうか。エクセルは2003を使ってます。

Aベストアンサー

C2セルに以下の数式を入力します。

=IF(AND($A2<>"",WEEKDAY($A2,2)>5),0,"")

同様にC2セルに以下の入力規則を設定します。

「データ」「入力規則」で「ユーザー設定」にして数式欄に以下の式を入力します。

=WEEKDAY($A2,2)<6

最後にC2セルを右方向および下方向にオートフィルします。

QEXCEL: 日付のセルに1/2/3と入れると、2001/2/3と解釈されるが、2003/1/2と解釈させるには?

タイトルのとおりです。アメリカでは、1/2/3と書くと普通は2003年1月2日と解釈されます。
EXCELにて、 日付のセルに1/2/3と入れると、2001/2/3と解釈されますが、表示形式は2/3/01と指定できるにもかかわらず、入力形式は年/月/日と固定されていますよね。これは何とかならないでしょうか?
入力→解釈→表示が全て「月/日/年」と一貫していると、いちいち翻訳せずに済むのですが・・・。

Aベストアンサー

コントロールパネルの「地域と言語のオプション」で設定できます。

【手順(WinXPの場合)】
1.[スタートメニュー]-[設定]-[コントロールパネル]を選択
2.コントロールパネルの「地域と言語のオプション」を開く
3.「地域オプション」タブの「標準と形式」で「英語(米国)」を選択
4.[適用]ボタンを押す
5.[OK]ボタンで画面を閉じる
⇒Excelで「1/2/3」と入力すると「2003/1/2」と認識される

※Windows全体が手順3で選択した表示形式に変わります。

Qエクセルの日付(130101)を(2001/1/1)にする方法

現在日付を130101と入力している物を2001/1/1にしたいのですが、いい方法を教えて下さい。
元はTXTデータをエクセルに取り込んでいます。130101のセルを日付タイプに変更すると年数が変になります。
最終的にはTXTをCSVで出力したいです。
よろしくお願い致します。

Aベストアンサー

「A1」に入力した日付が入っているとして、以下の計算式を別のセルに設定すれば、日付型として「2001/01/01」が表示されます。
=DATE(INT(A1/10000)+1988,MOD(INT(A1/100),100),MOD(A1,100))

これを上手く使ってください。

以上。

Qエクセルの関数を教えて下さい。 例 シート3 11月の売上集計 A 列 B列 C列 D列 1行 い

エクセルの関数を教えて下さい。

例 シート3 11月の売上集計
A 列 B列 C列 D列
1行 い ろ は
2行 りんご 3 2 4‥
3行 累計 15 12 13‥
4行 みかん 2 5 6‥
5行 累計 12 14 16‥
と売上の集計が続いています。
この時、2行目と4行目は手入力してます。
B3は=B2+10月シートB3となります。
C3はC2+10月シートC3となります。
5行目も同様です。
このシートをコピーして12月分を作った時、
B3は=B2+10月シートB3の10月を11月に
変更してます。
自動的に変更できる方法はないですか❓

Aベストアンサー

11月の
>シートをコピーして12月分を作った時、
>B3は=B2+10月シートB3の10月を11月に
>変更してます。
>自動的に変更できる方法はないですか❓
…と言う事ですか?
ならば月の数字をいじれば良いだけですので、CELL関数でシート名を取得して、それを加工しましょう。

 =CELL("filename",A1)
これで、このCELL関数が使われたシート名を含んだ文字列を取得できます。
 C:\Users\あさご\Documents\Excel_file\[売り上げとか.xlsx]12月の売上集計
のような値が返ってきますので、ファイル名の後ろにある「 ] 」の位置をFIND関数で見つけて、その次の文字から最後の文字までをシート名としてMID関数などで切り出し、
”月の売上集計”をSUBSTITUTE関数で削除する(空欄に置き換える)か、得られたシート名の先頭から「月」の文字の前の文字までを別途切り出す。
これで月の数字の部分を得ることができます。
あとはこの数字を足したり引いたりしてINDIRECT関数に入れて参照したいシート名にすればよいです。
1月には12月のシートを参照したいという事になるでしょうから、そのあたりも考慮して作りましょう。
(MOD関数を使うと良いかもしれない)

11月の
>シートをコピーして12月分を作った時、
>B3は=B2+10月シートB3の10月を11月に
>変更してます。
>自動的に変更できる方法はないですか❓
…と言う事ですか?
ならば月の数字をいじれば良いだけですので、CELL関数でシート名を取得して、それを加工しましょう。

 =CELL("filename",A1)
これで、このCELL関数が使われたシート名を含んだ文字列を取得できます。
 C:\Users\あさご\Documents\Excel_file\[売り上げとか.xlsx]12月の売上集計
のような値が返ってきますので、ファイル名の後ろ...続きを読む

QエクセルのワークシートAの1列目(A列)の日付と、ワークシートBの1列

エクセルのワークシートAの1列目(A列)の日付と、ワークシートBの1列目(A列)の日付を一致させて1つのワークシートに纏める方法を探しています。

2つの時系列データがあるのですが、データA(為替データ)とデータB(株式データ)のデータ管理方法が下記のように異なっています。

データA(為替データ)・・・1週間のうち6日間(月曜から土曜まで)
データB(株式データ)・・・1週間のうち5日間(月曜から金曜まで)

おのおのワークシートのA列に日付が入っています。

データAは月曜から土曜までなので、1週間に6行要します。データBは月曜から金曜なので1週間に要するのは5行です。従って、単純にこの2つのデータを張り合わせるだけでは(データBをデータAのシートに張り合わせた時)、1週間に要する行数が違うので1行ずつずれてしまいます。

1週間に要する行数の違いだけでなく、マーケットが休みの日はデータそのものがないため日付が存在しません。(マーケットの休みもおのおの別の日でバラバラです。)

これらの理由により、ただ単に張り合わせるだけだとずれが広がるばかりです。

そこでデータAの日付とデータBの日付を認識して一致させる関数を教えて欲しいと思います。

データAの構成はA1=日付、B1=始値、C1=高値、D1=安値、E1=終値で、データBの構成も同じです。
データAのF1にデータAのA1と同じ日付のデータBの行を貼り付るように設定したいと思っています。

説明が分かり辛い場合は補足しますので、その際はご指摘下さい。

宜しくお願いします。

エクセルのワークシートAの1列目(A列)の日付と、ワークシートBの1列目(A列)の日付を一致させて1つのワークシートに纏める方法を探しています。

2つの時系列データがあるのですが、データA(為替データ)とデータB(株式データ)のデータ管理方法が下記のように異なっています。

データA(為替データ)・・・1週間のうち6日間(月曜から土曜まで)
データB(株式データ)・・・1週間のうち5日間(月曜から金曜まで)

おのおのワークシートのA列に日付が入っています。

データAは月曜から土曜までなので、1...続きを読む

Aベストアンサー

誤記がありましたね。ごめんなさい。

シートCのA2に
2010/1/1
を置いて下向けにえいやっとオートフィルドラッグ,365日の日付を並べておいて
B2:為替
=IF(COUNTIF(為替!$A:$A,$A2),VLOOKUP($A2,為替!$A:$E,COLUMN(B2)),"")
を右に下にコピー。
F2:株式
=IF(COUNTIF(株式!$A:$A,$A2),VLOOKUP($A2,株式!$A:$E,COLUMN(B2)),"")
を右に下にコピー。

これでマーケットの開いてなかった日付がエラーになることもありませんので,追加のご質問も解消でしょうか。


人気Q&Aランキング

おすすめ情報