単純に、月の日数を取得したいです。
開始日とか終了日とかなしに、
例えば01/07と入力すれば、その年月の日数が表示されるようにしたいと思っています。
やり方を教えて下さい。

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

A 回答 (1件)

i-haradaといいます。



簡単にクエリーでやってみましょう。
テーブルに年月を入れるフィールドを作成します。
そのテーブルを基にクエリーを作成します。
[Q_年月]とします。その横に新しいフィールド[式1]として次の月を算出します。
ビルダーで
[式1]: IIf(Month([年月])=12,1,Month([年月])+1)とします。
次に、その横に新しいフィールド[式2]として次月を作成します。
[式2]: DateSerial(IIf(Month([年月])=12,Year([年月])+1,Year([年月])),[式1],1)とします。

[式3]: [式2]-[年月]
で日数がでます。

年月を認識するには「yyyy/mm/dd」と「dd」は 01にします。
これは「access」の日数計算等の時、間違えないようにするためです。
入力で「yyyy/mm」としても、必ず 「dd」は 01になるはずです。

このようなものでどうでしょう。
    • good
    • 0
この回答へのお礼

早速やってみましたら、できました。
ありがとうございました。

お礼日時:2001/07/10 10:10

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

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

Q誕生年月と開始年月からある年齡までの月数を求めたい

A1セルに誕生年月を入力します。そしてA2に算定の開始年月を入力します。するとB1に開始年月から40歳到達時までの月数、C1に開始年月から65歳到達時までの月数が表示されるようにしたいです。ただし以下の条件があります。

条件:40歳の誕生年月が到来した月は月数としてカウントするが、65歳の誕生日が到達した月は月数としてカウントしない

例(わかりづらいので4つの例を記載します;最初の2例で上記条件の意味がわかると思います)

A1にS48.7(誕生年月)A2セルにH25.7(開始年月)を入力するとB1に1と表示

A1にS23.7(誕生年月)A2セルにH25.7(開始年月)入力するとC1に0と表示

A1にS48.7(誕生年月)A2セルにH25.3(開始年月)を入力するとB1に5と表示

A1にS23.7(誕生年月)A2セルにH25.3(開始年月)入力するとC1に4と表示

B1とC1にどのような計算式をいれればよいか難しくて混乱しています(´;ω;`)
お力を貸していただければ幸いです(´;ω;`)

Aベストアンサー

#4です。

40歳以下または65歳以下しか入力されないということであれば、

B1:
=480-DATEDIF(DATEVALUE(A1&".1"),DATEVALUE(A2&".1"),"M")+1

C1:
=780-DATEDIF(DATEVALUE(A1&".1"),DATEVALUE(A2&".1"),"M")

だけでいいか。

Q開始日を入力したセルと終了日を入力したセルがあり関数で開催日全ての日程

開始日を入力したセルと終了日を入力したセルがあり関数で開催日全ての日程をカンマ区切りでひとつのセルに表示させたいのです

A1 2010/9/8  B1 2010/9/10  C1  2010/9/8,2010/9/9,2010/9/10

のように表示させたくて
セルA1に開始日、セルB1に終了日、
セルC1に
=CONCATENATE(A1,",",A1+1,",",B1)
と入力したところ
「40429,40430,40431」と表示されてしまいました

セルの表示形式は「日付」です

日付の形式で表示させるにはどうしたらいいのでしょうか
また日程は3日だけでなく5日のものもあるので
もっといい方法があったら教えていただけると助かります

1000行以上あるので面倒くさいんです。助けてください

Aベストアンサー

間違い。
=CONCATENATE(TEXT(A1,"yyyy/m/d"),",",TEXT(A1+1,"yyyy/m/d"),",",TEXT(B1,"yyyy/m/d"))
ですね。

QExcelで開始日と終了日を表示させたい

Excel2002についてお願いいたします。

A1、B1、C1・・・のセルには日付が順番に入っています。
(例えば、1月1日、1月2日、1月3日、1月4日、1月5日・・・)
A2、B2、C2・・・のセルには「○」が入っているセルと空欄のセルがバラバラに入っています。
(例えば、○、○、空欄、○、空欄・・・)

今、日付の下に○が入っているうちで一番早い日付と一番遅い日付を、「開始日」、「終了日」として表示させたいのですが、どうしたらよいでしようか?
上の例ですと、
開始日 1月1日
終了日 1月4日
と表示させたいのです。

よろしくお願いいたします。

Aベストアンサー

開始日と入力したセルの隣のセルに
範囲の最後の列がIだとすると
=MIN(IF(A2:I2="○",A1:I1,(A1:I1)*2))
と入力してSHIFT+CTRL+ENTERで決定
表示が
{=MIN(IF(A2:I2="○",A1:I1,(A1:I1)*2))}
になればOK
終了日と入力したセルの隣のセルに
=MAX((A2:I2="○")*A1:I1)
と入力してSHIFT+CTRL+ENTERで決定
表示が
{=MAX((A2:I2="○")*A1:I1)}
になればOK
後は、「表示書式のコピー/貼り付け」を使って
書式を同じくする。
○のあるセルが全くない場合でたらめになるので注意

Q【Excel2000】開始日と終了日から特定期間の抽出を行う方法

開始日と終了日がExcelのセルに指定されています。

例)
名前 開始日  終了日
------------------------
AAA H13.2.3 H16.2.3
BBB H12.1.5 H13.3.3
CCC H15.3.1 H17.2.15

たとえば上記から昨年度一年間の期間(H15.4.1~H16.3.31)を含んだレコードを抽出したい場合、どのようにすればよいでしょうか。なお開始日と終了日の期限はばらばらであり、未来日も存在します。通常のフィルタでは行うことができないと思いますので、他に方法がありましたらお教えください。

Aベストアンサー

オートフィルタなら「オプション」を選択してください。
開始日で「H16.3.31」「以下」
終了日で「H15.4.1」「以上」
の様にすればいいと思います。

Q例えば、8月1日~8月31日の“~”中にある日(8月15日など)を抽出したいです!

エクセル2003を使っています。

一つのセルに、『8月1日~8月31日』などと入力しています。
オートフィルターを設定しておいて、オプションの中で、例えば“8月15日/を含む”にした場合に、
先程の『8月1日~8月31日』の行が表示されるようにしたいです。
オートフィルターでできますか?オートフィルターでできないなら、どのようにすればできるでしょうか?

どうぞよろしくお願いします。

Aベストアンサー

#3です。

>切り出した後に、B2からC2間に含まれる日付を検索できるやり方はありますか?
>もちろんオートフィルターは使えないと思いますが・・・。

前の回答に書いていますが(#2さんも書いていらっしゃいますが)、開始日と終了日の隣のセルに求める日付が含まれているかどうかを判別する式を立てて、その列でオートフィルタをかける方法ではいけませんか。

#3で書いたことをもう少し詳しく書くと、
1)ワークシート上(例えばD1)に基準となる日付の入力欄を作る。
2)D2に=IF(AND(B2<=D$1,C2>=D$1),"○","")と入力して、以下適当な範囲まで(例えばD30まで)コピー。

以上で、D1に入力した日付に応じて、それが開始日と終了日の間に含まれる場合に○印が入るようになります。あとは、

3)D1:D30を範囲選択して、データ→フィルタ→オートフィルタ。

とすると、もしD2:D30の範囲に○印があれば、ドロップダウンリストの中に「○」と出てきますので、それを選択すると○印がある列だけが抽出されると思います。

もしおっしゃっていることを取り違えているようでしたら申し訳ありません。

#3です。

>切り出した後に、B2からC2間に含まれる日付を検索できるやり方はありますか?
>もちろんオートフィルターは使えないと思いますが・・・。

前の回答に書いていますが(#2さんも書いていらっしゃいますが)、開始日と終了日の隣のセルに求める日付が含まれているかどうかを判別する式を立てて、その列でオートフィルタをかける方法ではいけませんか。

#3で書いたことをもう少し詳しく書くと、
1)ワークシート上(例えばD1)に基準となる日付の入力欄を作る。
2)D2に=IF(AND(B2<=D$1...続きを読む


人気Q&Aランキング

おすすめ情報