Excel関数で期間内の年月を表示する方法
- Excel2010を使用しています。期間を指定して、その期間内の年月を表示する方法を知りたいです。
- A1(開始日)とB1(終了日)に期間を指定し、A3以降に指定された期間内の年月を表示する方法を教えてください。
- 検索してもなかなかヒットせず、解決策を探しています。良い関数はないでしょうか?
- ベストアンサー
Excel関数について
Excel2010を使用しています。 以下の事をExcelで行いたいのですが、検索してもなかなかヒットせず、 解決策を探しています。良い関数はないでしょうか? A1(開始日)、B1(終了日)に期間を指定する(2014/2/1~2014/5/15) 開始日終了日は、日付まで記入する A3以降に指定された期間内の年月を表示する A3以降はMAX12か月分まで表示 (例) A1 : 2014/2/1 B1 : 2014/5/15 A3 : 2014/2 B3 : 2014/3 C3 : 2014/4 D3 : 2014/5 E3 : 空白 F3 : 空白 G3 : 空白 ・・・・ L3 : 空白
- chiko2525
- お礼率61% (8/13)
- Excel(エクセル)
- 回答数4
- ありがとう数4
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
A3には =IF(COUNT(A1:B1)=2,A1-DAY(A1)+1,"") と記入,セルの書式設定の表示形式のユーザー定義で yyyy年m月 と設定する B3には =IF(OR($A3="",EDATE($A3,COLUMN(A1))>$B1-DAY($B1)+1),"",EDATE($A3,COLUMN(A1))) と記入,セルの書式設定の表示形式のユーザー定義で yyyy年m月 と設定してL3までコピー貼り付けておく。
その他の回答 (3)
- bunjii
- ベストアンサー率43% (3589/8248)
目的に合うか否かは分かりませんが添付画像のようにExcel 2013で試算してみました。 Excel 2010でも同じ結果を得られます。 A3=IF(EOMONTH($A$1,COLUMNS($A1:A1)-2)+1<$B$1,EOMONTH($A$1,COLUMNS($A1:A1)-2)+1,"") A3セルをL3セルまでオートフィルでコピーしました。 結果の確認用にA5セルへ下記の式をセットしてL5セルまでオートフィルでコピーしました。 A5=A3
お礼
ありがとうござました。無事に作成できました。
- kagakusuki
- ベストアンサー率51% (2610/5101)
まず、A3セルの書式設定の表示形式を[ユーザー定義]の yyyy/m として下さい。 次に、A3セルに次の様な関数を入力して下さい。 =IF(ISNUMBER(1/DAY($A$1)),IF(COLUMNS($A:A)>IF(ISNUMBER(1/DAY($B$1)),IF($A$1>$B$1,0,DATEDIF(TEXT($A$1,"yyyy/m"),$B$1,"m")+1),12),"",DATE(YEAR($A$1),MONTH($A$1)+COLUMN()-COLUMN($A$3),1)),"") 次に、A3セルをコピーして、B3~L3の範囲に貼り付けて下さい。 以上です。
お礼
ありがとうござました。無事に作成できました。
- usami33
- ベストアンサー率36% (808/2210)
ちょっと長いけど 下の式 =IF(ISERROR(IF(DATE(YEAR(A1),MONTH(A1)+1,DAY(A1))<$B$1,DATE(YEAR(A1),MONTH(A1)+1,DAY(A1)),"")),"",IF(DATE(YEAR(A1),MONTH(A1)+1,DAY(A1))<$B$1,DATE(YEAR(A1),MONTH(A1)+1,DAY(A1)),"")) それとセルの書式設定⇒ユーザー定義で 「yyyy/m」を指定しておくと年月表示になります
お礼
ありがとうござました。無事に作成できました。
関連するQ&A
- IFの入れ子(EXCEL関数)
excel:2007 os:vista A B c D E STS 開始日(予定) 終了日(予定) 開始日(実績) 終了日(実績) 1 未着手 2017/1/31 2017/2/1 空白 空白 2 着手 2017/1/31 2017/2/1 2017/1/31 空白 3 完了 2017/1/31 2017/2/1 2017/1/31 2017/2/1 上記のように、STSと開始/終了の予定実績日付と当日日付(2017/2/2)を確認して、 1から2の状態だったら”超過”と表示したいです。 ・開始予定日となっているが、開始実績日が未入力のレコード ・着手しているが、終了予定日を過ぎているレコード ifの入れ子しか方法はないのでしょうか? 1か2の単独ではできるのですか、両方の条件を考慮させた場合、できません。 わかる方、ご教示を。 また、IFの入れ子以外に方法は、あるのでしょうか?
- ベストアンサー
- Excel(エクセル)
- EXCEL関数について
以下の条件が出せるEXCEL関数を教えてください。 A1値あり B1空白の場合 C1にA1の値を表示 A1空白 B1値ありの場合 C1にB1の値を表示 A1値ありB1値ありの場合C1にエラー A1空白B1空白の場合C1は空白 よろしくお願いいたします。
- ベストアンサー
- Excel(エクセル)
- 関数を教えて下さい
Microsoft Office Excel 97-2003 を使用しています。 (1) 期間の開始日から終了日までを求めたいのですが,開始日が含まれないため 1日少なく結果が出てしまいます。 式に +1 とすればよいのですが,きちんと式に組みこまれたような関数はないでしょうか。 (2) また,開始日や終了日が空白でも,日数が入ってしまい, 開始日や終了日が空白の場合は空白にしたいです。
- ベストアンサー
- その他MS Office製品
- excel2007 特定の曜日をカウントしたい
excel2007で、ある期間内における特定の曜日の数を求めるための、 関数もしくは計算式を教えてください ただし、NETWORKDAYS.INTL関数はexcel2010以降に登場した関数のため、 それ以外でお願いします また、初心者なので、 なるべく原理も教えていただければ幸いです ちなみに、A1とB1に開始日と終了日を代入して =A1-B1+1-NETWORKDAYS(A1,B1) の様にやってみましたが、上手くいきませんでした。
- ベストアンサー
- Excel(エクセル)
- EXCEL関数について
以下の条件が出せるEXCEL関数を教えてください。 A1が1以上、 B1が0の場合 C1にA1の値を表示 A1が0 、B1が1以上の場合 C1にB1の値を表示 A1が1以上、B1が1以上の場合C1にエラー A1が0、B1が0の場合C1は空白
- ベストアンサー
- Excel(エクセル)
- Excel関数について
Excel関数教えて下さい。条件はA4~A70の範囲で空白の場合は表示しない、空白でない場合は、その範囲を合計し表示する。簡単そうで難しいですねこの関数。宜しくお願いします。
- ベストアンサー
- 会計ソフト
- EXCEL2003で日付計算(難易度高)
EXCEL2003で日付計算を行っているのですが、 指定した日(開始日)から日曜日と祝日を除いた7日後(Aとします)を表示させ、 その日から指定した日(終了日)までの日数を求めたいのですが 何かよい式はないでしょうか? ちなみにAから終了日までは日曜日も祝日も含みます。 開始日 7/10 7日後 7/17 終了日 7/22 7/17~7/22日数は7/17を含めるため7です。 通常の引き算だとA(7/17)を含まず6と表示されてしまいます。
- 締切済み
- その他MS Office製品
- EXCEL関数について
EXCEL関数について B1~E1セルが1箇所でも空白でない場合、A1セルに「1」を返す式を 「COUNTBLANK」関数と「IF」関数を使って試みたのですがうまく行きません。 B1~E1セルがすべて空白の場合はA1セルも空白になります。 ご教示頂きたくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Excel関数で特定のセルが空白の場合にカウントするよう設定したい(SUMPRODUCT)
SUMPRODUCTを使い「A!D3:D10000」のセルが空白の場合、 カウントするよう設定したいのですが方法が分かりません。 設定したい式は以下となります。 【設定したい式】 =SUMPRODUCT((A!D3:D10000>=A!C3:C10000)*(A!F3:F10000<>"")*(A!F3:F10000<>"障害")*(((A!B3:B10000>=U59*1)*(A!B3:B10000*1<=V59))*(A!C3:C10000<>"")) 【式解説】 =SUMPRODUCT((A!D3:D10000>=A!C3:C10000) ←A!C3:C10000よりD3:D10000が大きい場合を指定 *(A!F3:F10000<>"") ←A!F3:F10000が空白じゃない場合を指定 *(A!F3:F10000<>"障害") ←A!F3:F10000障害じゃない場合を指定 *(((A!B3:B10000>=U59) ←A!B3:B10000がU59以上の場合を指定 *(A!B3:B10000*1<=V59)) ←A!B3:B10000がV59以下の場合を指定 *(A!C3:C10000<>"")) ←A!C3:C10000が空白じゃない場合を指定 【やりたい事】 A!D3:D10000のセルが空白の場合、カウントするよう設定したい 以上宜しくお願い致します。
- 締切済み
- その他MS Office製品
- Excel関数について教えてください。
Excel関数について教えてください。 A1が1004の場合は、5555とB1に表示 A1が1005の場合は、5556とB1に表示と A1が1増えると、B1も1増えて表示したいです。 A列 B列 1004 5555
- ベストアンサー
- オフィス系ソフト
お礼
ありがとうござました。無事に作成できました。