エクセルの日付をコピーしても数字になる時の3つの対応方法

エクセルの日付をコピーしても数字になる時の3つの対応方法 コピー

エクセルでは、2019/5/1と入力したセルを『セルの書式設定』の『ユーザー定義』や『日付』で形式を変更すると、『令和1年5月1日』のように好きな形式で日付を表示させることができます。

でも、表示されている日付をそのまま文字列として他のセルにコピーしようとしても、わけのわからない『数字』が貼り付けられるんですよね。

この記事の内容

  • TEXT関数を使って日付を文字列としてコピー
  • YEAR関数/MONTH関数/DAY関数を使って日付を文字列としてコピー
  • メモ帳を使って日付を文字列としてコピー

今回の記事では、TEXT関数やYEAR/MONTH/DAY関数、メモ帳を使った3つの方法で日付を文字列のままでコピーする方法を紹介します。

『日付が変な数字が貼り付けられて困っている』という人は、ぜひ参考にしてください。

エクセルの日付がわけのわからない数字で貼り付けられる原因

罫線などの『書式』を除いた日付だけを貼り付けた時に、わけのわからない数字が貼り付けられてしまう原因について解説します。

すぐにでも、『日付の文字列』をコピーする方法を知りたい場合は、スキップして次へ進んでください。

エクセルの日付はシリアル値という特別な数値で管理されている

エクセルの日付は文字列ではなく『シリアル値』という特別な数値で管理されています。

シリアル値を簡単に説明すると、『1900年1月1日から現在までの経過日数』の値になります。

この仕様をふまえると、2019/5/1の場合は『43586』ですね。(1900年1月1日から43586日経過している)

シリアル値をそのままセルに表示されても???状態になるので、エクセルは指定されている日付の表示形式にあわせてシリアル値を日付で表示させます。

『シリアル値を表示形式にあわせて日付として表示される』という仕様はものすごく重要なので、ぜひ覚えておいてください。

普通、罫線やセルの色などの書式を除いた『2019/5/1』という日付だけをコピーしたい場合は、『形式を選択して貼り付け』のオプションで『値』を選ぶことになります。

でも、実際には『2019/5/1』の値は文字列ではなく『シリアル値』なので、『43586』が貼り付けられてしまうんです。

貼り付けのオプションに『日付の文字列として貼り付ける』なんていうのがあればいいんですが、今のエクセルにはそんなオプションは存在しません^^

だから、自分で『日付の文字列』をコピーする工夫が必要となります。

なお、エクセルの日付を扱う場合は『シリアル値』についての知識がないと、日付の処理でつまってしまうことが非常に多いです。

エクセルで日付を扱う時にはシリアル値を理解しておくことが非常に重要です。

次の記事でシリアル値についての理解を深めることをおすすめします。

次からは、『日付の文字列』だけを貼り付ける方法について紹介していきます。

TEXT関数を使って日付をコピーする

まずは、TEXT関数を使って日付の文字列をコピーする方法で、事前に関数入力とセルを別に用意する必要があります。

表示されている日付の形式のままコピーしたいのであれば、より簡単な『メモ帳(テキストエディタ)を使って日付をコピーする』に進んでください。

 

次のように、セルに入力されている日付(2019/5/1)を文字列のままで『貼り付け先セル』にコピーする方法です。

まずは、『関数入力用』のセルに次のTEXT関数を入力しておきます。

=TEXT(B4, "yyyy/m/d/")

TEXT関数を使って日付の文字列をコピーする

TEXT関数は最初の引数に日付のセルの位置(この例ではB4)を指定し、二番目の引数では日付の表示形式を指定します。

今回は、入力した日付と同じ表示形式の『yyyy/m/d』を指定しています。

 

コピーの準備ができたので、関数を入力したセル(C4)を『CTRL』+『C』でコピーします。

そして、『張り付き先セル』(D4)をクリックしてから、ショートカットキー『CTRL』+『ALT』+『V』を押して『形式を選択して貼り付け』ダイアログを表示させ、『値』を選択して『OK』を押します。

『形式を選択して貼り付け』ダイアログ

 

すると、2019/5/1という文字列が貼り付けられます。

TEXT関数を使って日付の文字列をコピーする

ちなみに、TEXT関数では日付の表示形式にいろんものを指定することができます。

『令和1年5月1日』のような和暦表示や、『2019.5.1』のような西暦の表示も可能なので、表示形式を変更したい場合は、次の記事を参考にしてください。

関数(YEAR、MONTH、DAY)を使って日付をコピーする

次に紹介する方法も、日付が入力されているセルとは別なセルに、関数(YEAR、MONTH、DAY)を入力します。

こちらも、ちょっと手間がかかって、セルも別に用意する必要があります。

表示されている日付の形式のままコピーしたいのであれば、より簡単な『メモ帳(テキストエディタ)を使って日付をコピーする』に進んでください。

 

まずは、関数入力用のセル(C4)に、次の関数式を入力します。

=YEAR(B4) & "/" & MONTH(B4) & "/" & DAY(B4)

YEAR関数/MONTH関数/DAY関数を使って日付の文字列をコピーする

YEAR関数、MONTH関数、DAY関数は、日付から『年』、『月』、『日』を返すので、それぞれ引数として日付のセルの位置(この例ではB4)を指定します。

すると、上のエクセルにもあるように関数を入力したC4のセルにB4と同じ『2019/5/1』という日付が表示されます。

これから先の、実際のコピー&貼り付けの手順は先に紹介した『TEXT関数を使って日付をコピーする』と同じなので、そちらを参考にしてください。

 

もし、年+月だけコピーしたいので、あれば関数は『YEAR(B4) & “/” & MONTH(B4)』のように入力すればいいです。

また『2019.5.1』のような形式でコピーしたいのであれば、”/”を”.”に変更して、区切りの文字を変更することができます。

メモ帳(テキストエディタ)を使って日付をコピーする

入力した日付と全く同じ形式の日付文字列をコピーしたいので、実はメモ帳(テキストエディタ)を使った方法が一番簡単です。

先に紹介した方法のように、別に関数入力用のセルを用意する必要もなく、メモ帳さえあればOK!

メモ帳じゃなくても、日頃から使っているテキストが扱えるエディタ(サクラエディタ、秀丸エディタなど)でもいいですよ。

 

メモ帳を使った場合のコピー手順です。

こちらも、日付が入力されているセルをコピーします。

メモ帳を使って日付の文字列をコピーする

 

メモ帳を開き、そのまま貼り付けます。

そして、貼り付けた日付を選択し、コピーします。

メモ帳を使って日付の文字列をコピーする

 

最後に、貼り付け先セルに『CTRL』+『V』で貼り付ければ、日付の文字列が貼り付けられます。

メモ帳を使って日付の文字列をコピーする

この方法は、紹介した方法の中で一番簡単な手順でコピーできますが、入力日付をそのままコピーするので、表示形式を変えてコピーしたい場合は、TEXT関数やYEAR関数の方法を参考にしてください。

まとめ

まとめ

  • 日付の表示形式を変えずにそのままコピーしたい場合は、メモ帳を使った方法が一番簡単。
  • TEXT関数やYEAR関数は表示形式を変更したコピーができる。
  • 日付を『値』でコピーする場合はシリアル値(数字)がコピーされることを理解する。

エクセルの得意とする日付の処理ですが、日付をそのままの文字列でコピーするには以外と手間がかかることがわかるかと思います。

やっぱり、貼り付け時に『日付の文字列として貼り付ける』というオプションがあると便利だと思うんですが、マイクロソフトさんなんとか機能追加してくれないでしょうか^^

いずれにしろ、現状は日付の文字列のコピーには今回紹介した方法で対応するしかありません。

一番適した方法で試してみてください。

タイトルとURLをコピーしました