• ベストアンサー

2つのセルを一つに・・しかし、日付のセルが数値に変わってしまう

セルには     A        B      1 2005年5月   修正あり  と入力されています。 C1に、AとBに入っている文字をつなぎ合わせ、更に結合した部分を:で区切ろうと思い、C1セルに「A1&":"&B1」と入れました。 すると、C1に 36647:修正あり と出てしまいました。 日付が数値に切り替わっちゃったのですが、日付は日付で数値に切り替わらないようにする方法はありますか? 500行ぐらいあるので・・お願いします。

noname#248169
noname#248169

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

  • ベストアンサー
回答No.3

TEXT関数で日付を文字列に変換してください なお、"" は " の "~" 内での記述方です。 =TEXT(A1,"yyyy""年""m""月""") & ":" & B1

noname#248169
質問者

お礼

ありがとうございました 簡単そうな関数で、すぐに出来ました。 解決できて良かったです。

その他の回答 (5)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.6

エクセルは(1)値と(2)シート上で表示形式で見えている文字とは全く別です。特に日付について顕著です。 表示計数を細工すると、あるセルに0と入れると大阪、1と入れると京都と表示させることも可能です。 このことを判ってしまえば、この質問は発生しません。 また日付けの値は日付シリアル値という整数値です(1900年1月1日スタートのその日が何日目かの、順序数です。) また「&」は「値」を結合するもので、表示形式で見えている見た目の文字を結合するものではありません。 文字列は表示形式らしいものはほとんどなく、値もそのもののケースが多いです。しかし、日付を表示形式で見えている形に関数などで変換して「値」にしないと見た目のように結合できません。その方法がTEXT関数やYEAR、MONTH、DAY関数を利用することです。

noname#248169
質問者

お礼

ありがとうございました >日付を表示形式で見えている形に関数などで変換して「値」にしないと見た目のように結合できません。 すごく勉強になりました。Excelって奥深いですね。

  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.5

No.2です、訂正します。 誤) =TEXT(A1,"yyyy年m月:"&B1) ↓ 正) =TEXT(A1,"yyyy年m月:")&B1

noname#248169
質問者

お礼

わざわざありがとうございます。 出来ました♪ TEXTとは、思いつきませんでした。 いろんな関数があるんですねぇ

  • nikuq_goo
  • ベストアンサー率46% (335/715)
回答No.4

EXCELは日付をシリアル値で格納しています。 表示だけフォーマットを変えているのです。 故に対処法法は”シリアル値を表示値に変える事”です 方法は二つ =TEXT(A1,"yyyy""年""mm""月""dd""日") &・・・ とする(日が要らなければ適宜削除) もう一つはyear、month、day其々の関数にシリアル値を与えてやること =YEAR(A2)&"年"&MONTH(A2)&"月"&DAY(A2)&"日"&・・・ です。 前者は桁数を固定出来ます。後者は出来ません。 後は見た目の問題ですが concatenateを使うとすっきりしますよ concatenate(YEAR(A2),"年",MONTH(A2),"月",DAY(A2),"日"

noname#248169
質問者

お礼

ありがとうございました >”シリアル値を表示値に変える事” 仕組みが分かると分かりやすくなります。

  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.2

こんにちは~ C1に =TEXT(A1,"yyyy年m月:"&B1) と入れてみてください。

回答No.1

C1 =YEAR(A1)&"年"&MONTH(A1)&"月:"&B1 でいいんじゃないの?汎用性があまりないけど、楽だとおもう。

noname#248169
質問者

お礼

ありがとうございました 少し難しそうな関数ですが、試してみます。

関連するQ&A

  • エクセルで分割された日付の表示方法

    セルA1に年が2011 セルB1に月 5 セルC1に日 15 と別々に入力されている日付を一つのセルに8桁で 20110515 と表示する方法を教えて下さい。 文字列の結合だと月と日が1桁の場合だと6桁になってしまいます。 どうすればいいのでしょうか。

  • Excel2002でセルへの数値代入

    使用しているのはExcel2002なんですが 関数などを使用して空白セルへ数値及び文字列を 代入することって可能でしょうか? 例を挙げると、 セルA1に7という値を入力すると、 セルC1にある関数が「10-A1」という計算を行って セルB1に3という値を返すようにしたいのです。 また、セルB1に4という値を入力すると、 セルC1で計算を行い、セルA1には6が返る。 このようにセルA1、B1ともに、人の手で数値の 入力が行われる可能性があるので、表示部分のセルに 関数式を記述せず、空白としておく。 C1に入力する関数は IF(B1="",10-A1,10-B1) として、この結果を、またIFなどを使って 空白の方のセルに入力してあげればいいかなー というところまでは考え付いたのですが・・・ どなたか教えてください。

  • 日付、時刻の文字情報を日付、時刻データとしてセルに取り込む方法について

    日付、時刻の文字情報を日付、時刻データとしてセルに取り込む方法について エクセルのセル A1に 1999.08.31 B1に 22:15 というデータが文字情報として入力されています。 これを日付、時刻データとして、結合して、 C1に 1999/08/31/22:15 というようにデータを変換したいのですが、 なにか簡単な方法はありませんか。 私としては、C1セルをシリアルデータとして扱い、時刻の足し算、引き算をしたいのです。 このデータが膨大な量ですので、何か、関数を用いて、一度に処理できないのか思案しています。 以上よろしくお願いします。

  • Excelでセル内改行

    お世話になります。 早速ですがExcelで複数のセルに文字列が入力されている時、それらの文字を結合する場合はCONCATENATE関数を使いますよね? で、この応用(なのか判りませんが)で例えばセルA1に"改"の文字が、セルB1には"行"の文字が入っているとき、セルC1に 改 行 と改行させて2行で表示したいのですが、セルC1に"=CONCATENATE(A1,CHAR(13),B1)"とやってもうまくいきませんでした。 Alt+Enterで手入力する以外に関数、マクロ等で何かいい方法がありますか? よろしくお願いします。

  • エクセルの日付機能

    エクセルの日付機能に関する質問です。 あるワークシートのA列に日、B列に月、C列に年が入力されています。これらの日付を行ごとに結合して、D列にdd/mm/yyという形式で表示させたいと考えています。 先ほど、D2に[=A2&"/"&B2&"/"&C2]という計算式を入力し、D列を右クリックして[セルの書式設定]→[表示設定]→[ユーザー定義]で[種類]欄に[dd/mm/yy]と入力しましたが、D2は日付として認識されず、ただの文字列として認識されているようです。 統合された文字列が日付として認識される良い方法を教えていただけないでしょうか?よろしくお願いします。

  • エクセル 文字列(数値)を日付データに変換

    システムからCSVデータを抽出したのですが、日付データと時刻データが数値としてあります。これを日付、時刻データに変換したいのですが良い方法はありますでしょうか。 A1     20070601 → 2007/6/1 B1 1230   → 12:30 としたいのです。 データは1万件以上あるため、手入力で「/」を入れて いくわけにはいかず困っています。 またA1セルを「left関数」などで分割してから、 「&」で結合させても文字列として認識して うまくいきません。 何か良い方法がないかよろしくご教示を お願いします。

  • あるセルの文字列(または数値)を、他のセルのデータの一部として流用した

    あるセルの文字列(または数値)を、他のセルのデータの一部として流用したい場合について。 例えば、 セルA1に 0001 セルA2に K-0001 セルA3に T-0001 セルA4に W-0001 また、 セルB1に 0035 セルB2に K-0035 セルB3に T-0035 セルB4に W-0035 …C、D、E、、、と100項目ほど続く、という場合。 このようにデータを入力していきたい場合、 例えば、A列で、 A1の0001という数字を、A2~A4の中で、「データの一部として代入」したい時、 どういう風に自動化できますでしょうか? (例)K-0001 の中において、0001という数字は、データの一部として使われている。 ちょっとまとめてみますと、 1行目:●●●● 2行目:K-●●●● 3行目:T-●●●● 4行目:W-●●●● ●●●● は、同列の1行目の数値を、そのまま割り当てる というような記述ができたらなと思っているわけです。 つまり、1行目に●●●●を打ち込むだけで、その列の2行目以降について、適宜、自動的に必要な数値なり文字列が入力されるようにしたいわけです。 このようなことは、できませんでしょうか? マクロでも何でも結構です。 どなたか、お詳しい方、教えて下さい。 必ずお返事致します。

  • エクセルで「日付」を表示する件

    エクセルで「日付」を表示する件 シート(1)の「A1」に「この事件は」の文字列。「B1」に書式を日付にして「平成22年8月1日」と入力。「C1」に「に起こりました」と入力。 複数のセルの文字列と日付を一つのセルに合わせて「この事件は平成22年8月1日に起こりました」のようにしたいので、「D1」に「=A1&B1&C1」と入力すると、「この事件は40391に起こりました」と表示されてしまいます。 解決方法を教えて下さい。 エクセルのバージョンは2002です。

  • ExcelVBAで結合セルのある高さ調整

    ExcelVBAでの質問です。Aはチェック欄、Bは連番、Cは日付、Dは名前、Eは内容を入力。ExcelVBAで以下のような表で「講義」とい う文字を検索してチェックをつけ、ソートするところまではできました。 A B C    D  E   1 5/1  福島  研修   2 5/1 佐藤  集会   3 5/1 鈴木  セミナー ○ 4 5/1 鈴木  講義   5 5/1 山中  集会 ○ 10 5/4 古河  講義   11 5/4 山田 研修   6 5/2 森川  セミナー   7 5/3 山中  研修   8 5/3 佐藤  集会   9 5/3 佐藤  セミナー 上記のようにチェックがある日付順になっています。元々「各行には点線が、日付ごとには太線が引いてあって区別されてしました。それを私が「セル結合解除、B列連番」をして並び替えたために、元々の日付のセルの大きさは崩れ、罫線は太線も点線もごちゃごちゃになったのです。 で・・・お伺いしたいのが「行の高さ調整」について。「5/1は5行なので60、5/4は2行なので27、5/2は1行なので13.5」と高さは決まったいるのですけど、更に日付ごとに「セル結合」する予定なのです。もっと本当の表は複雑で、私がここでは簡略化しているですが、うまく調整できないのです。この表は上の状態から元の表に近づけるべく「日付ごとのセル結合、罫線、行の高さ調整」をする予定です。 とりあえず一番困っているのは、「セル結合する予定の5/1を5行で60にする」方法です。先に「日付ごとにセル結合」をしたら、行の高さを調整するのがうまくできなかったのです。 わかりにくいのですがよろしくお願いします。初心者初心者していてすみません。

  • エクセルで日付を数値として入力してしまいました

    エクセル超初心者です。お世話になっております。 新しいブックを作ったとき、誤って日付のセルを数値にしてしまいました。すでに数百行入力してあります。 「2004.4.1」のつもりが、数値の「4.1」になってしまったため、昇順で並び替えすると「4.2」が「4.19」の次に来てしまいます。 これを日付に直す方法はあるでしょうか? セルを選択して「日付」に表示を直したところ、1月分はすべて「1904.1.2」に、2月分はすべて「1904.1.3」になってしまいました。 過去Q検索でQNo.679901「エクセルで数字データを日付けにしたい」を見つけてやってみましたが、私のレベルではチンプンカンプンで、行がずれて目茶苦茶になってしまいました。。。(T_T) (複製をとってあったので元に戻せましたけど。) 宜しくお願いいたします。

専門家に質問してみよう