• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelでシートに年月を自動で変更するやり方)

Excelでシートに年月を自動で変更するやり方

このQ&Aのポイント
  • Excel2010を使用している場合、シート毎に月の請求書を作成している場合、一括で年月を変更する方法を教えてください。
  • シート1の平成25年4月を入力したら、シート2からシート12までの年月が自動で変更される方法を知りたいです。
  • =DATE関数を使用してシート2の年と月をシート1の年と月から計算する方法がありますが、手動でMONTHの数字を変更する手間がかかります。一括でMONTHの数値を増やす方法があるか教えてください。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.5

例えば各シートのA1セルにお望みの表示をさせるとしたら初めにシート見出しで4月~3月までをShiftまたはCtrlキーを押しながらクリックします。これで同じ作業グループが構成されます。 A1セルには次の式を入力します。 =IF(AND(SUBSTITUTE(TRIM(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,10)),"月","")*1>=4,SUBSTITUTE(TRIM(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,10)),"月","")*1<=12),DATE(2013,SUBSTITUTE(TRIM(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,10)),"月",""),1),DATE(2014,SUBSTITUTE(TRIM(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,10)),"月",""),1)) その後にA1セルを右クリックして「セルの書式設定」の「表示形式」の「ユーザー定義」で種類の窓には ggge"年"m"月" を入力してOKします。 その後にシート見出しで右クリックし「作業グループ解除」を選択します。

wakac
質問者

お礼

A1セルを本来自分で表示させたいセルの数字に置き換えてやったら出来ました! 26年1月~3月もちゃんと25年から26年に変わっていました! 今後の仕事に活躍させたいと思います! 有難うございましたm(_ _)m

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.4

+2から+12した方がはるかに簡単ですが。 >Excel2010を使用しています。 シート2のA1に =EDATE(Sheet1!A1,1) シート3のA1に =EDATE(Sheet1!A1,2)  : まぁどーしてもでしたら Sheet1のA1に年/月/日を記入(書式は随意)しておき、Sheet2からSheet12までのA1に =EDATE(Sheet1!A1,SUBSTITUTE(RIGHT(CELL("filename",A1),2),"t","")-1) のように記入しておきます。 かならずブックは事前に一回保存しておかなければいけません。

wakac
質問者

お礼

複数の場所に同じ方法で書類を作っているので・・・ できれば1シートを変えただけで全部一気に変わってくれると、 今後の仕事も早くできるかなと思ったので(;_;) 2つ目のやり方ですと#VALUE!と出てしまい・・・ わかりませんでした(>ェ<;)

すると、全ての回答が全文表示されます。
noname#195146
noname#195146
回答No.3

 すみません、お間抜けの#2です。  私はシート名を1~12にしたんですが、愚かにも関数ではSheet1を指定してました。最初のシートをSheet1(もしくはお持ちのブックの最初のシート名)にしておけば大丈夫です。  もし最初のシートのシート名を「1」にするなら、関数は以下のようにすればできました。 =DATE(YEAR(1!$A$1),RIGHT(MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1))+1,31),2),DAY(1!$A$1))  この関数は、 1.新規ブックなら必ずいったん保存して開き直すこと、 2.関数入力時に関連づけるブックを聞いて来るので、間違いなく編集中のブックを選択すること、 3.さらに関連づけるシートを聞いて来るので、間違いなく最初のシートを選択すること、 が大事です(フリーのOfficeは、……まあいいかorz)。

すると、全ての回答が全文表示されます。
noname#195146
noname#195146
回答No.2

 一気に設定する方法ですが、シート名に制限を加えれば、できなくはないようです。ブックごとに仰る方法とどちらがいいか、非常に迷うような気もします。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1020567345  上記でシート名を1~12にし、 >=DATE(YEAR(Sheet1!$A$1),MONTH(Sheet1!$A$1),RIGHT(MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1))+1,31),2)) という関数を、 =DATE(YEAR(Sheet1!$A$1),RIGHT(MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1))+1,31),2),DAY(Sheet1!$A$1)) にすればできそうなんですが、こちらではちょっと上手く行っていません(どうしても1900年になってしまう)。  なお、私はMSのはOffice2000しか持っておらず、以降はフリーのOpen OfficeかLibroOfficeを使っていますが、フリーの方では全く上記関数は使えず、エラーになってますorz。  もう少し、Excel2000で粘ってみようかと思いますが、質問者様の方ではすんなり動くかもしれないと思い、とりあえずご報告だけいたしておきます。

wakac
質問者

お礼

このやり方がいまいちわかっていませんでした・・・ もう一度やり直してみたら出来ました! けれど、今年の4月~来年の3月まで順番なので、このやり方ですと26年の1月~3月と出したいのですが25年のままでした。 このやり方も覚えたので今後の参考にさせていただきます!

すると、全ての回答が全文表示されます。
回答No.1

>全シートを複数選択して一度にMONTHの数値を増やして設定する方法はありませんでしょうか? ないこともないですが、12枚でしたら >MONTHの数字を+2から+3、+4、+5、・・・・と入力を変更していかないといけないので手間がかかります。 のほうが分かりやすいし、一度設定すればその後の設定の必要がないのではないでしょうか? >=DATE(YEAR(シート1の平成25年4月の場所),MONTH(シート1の平成25年4月の場所)+2,) 月末でなくてよいなら =("平成25年"&MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,3)&"1日")*1 とすることは可能ですが、わかりにくくないですか?

wakac
質問者

お礼

このようなやり方もあるんですね! でもこのやり方ですと来年また作る時に、コピーして貼付けしないとですよね? 来年もまた作るので25年を26年に1シートで変えるだけで全部変わる方法が良かったですが、この方法もメモして今後の参考にさせていただいきます。 ありがとうございました!

すると、全ての回答が全文表示されます。

関連するQ&A