• ベストアンサー

Excelの関数について

A1セルに日付が「2015/11/2」と入っています。セルの書式設定で表示を「H27.11.2」としています。 これを、「4271102」と7ケタの和暦にして別シートに値貼り付けできるようにしたいのですが、良い方法を教えていただけますでしょうか。 TEXT関数などいろいろ試してみたのですが、上手くいきませんでした。宜しくお願いいたします。

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

  • ベストアンサー
  • f272
  • ベストアンサー率46% (8012/17125)
回答No.1

こんな感じで値を作って値貼り付け ="4"&TEXT(A1,"r")&TEXT(A1,"mm")&TEXT(A1,"dd")

japaaazy
質問者

お礼

ありがとうございましたm(_ _)m 大変参考になりました。 おかげさまで無事解決できました。 恐れながら、ベストアンサーとさせていただきますm(_ _)m

その他の回答 (3)

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

=IF(A1="","",(SEARCH(TEXT(A1,"g"),"mtsh")&TEXT(A1,"emmdd"))+0) とかで十分です。

japaaazy
質問者

お礼

早速の回答、ありがとうございました。 いろいろな方法があって、勉強になりました。 ありがとうございましたm(_ _)m

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.3

添付図に示す表を同じブック内の何処かの空き範囲に作成して、当該表に(例えば) ad2jc という名前をつけておけば、式 =VALUE(VLOOKUP(A1,ad2jc,2)&TEXT(A1,"emmdd")) を入力したセルは数値「4271102」を返すので、このセルをコピーして別シートに“値の貼り付け”を実行すればOKかと。

japaaazy
質問者

お礼

画像付きの回答、とても分かりやすかったです。 ありがとうございましたm(_ _)m

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 次の様な関数にされると良いと思います。 =IF(ISERROR(1/DAY(A1)),"",FIND(TEXT(A1,"g"),"MTSH")*1000000+TEXT(A1,"eemmdd"))

japaaazy
質問者

お礼

早速の回答、ありがとうございましたm(_ _)m 大変参考になりました!

関連するQ&A

  • エクセル関数について

    エクセルの関数についてなのですが、例えば「セルA3」に「セルB2」の値を表示させるには「=(B2)」と「セルA3」に表示させてます。別のSheetの値も表示できるのでしょうか?例えば「Sheet1.Range("A3")」の値をSheet2のA1に表示させたい場合Sheet2のA1にはどのような関数を入力していけばよいのでしょうか?VBAは使わずに表示したいのですが。関数はまだほとんど使ったことがないので分かる人いたら教えてください。よろしくお願いします。

  • Excel 関数 

    例えば1つのセルに下記のような値が入っていたとき、別のセルに記号などを省いた形式に出力させるには REPLACEなどで表示させれば問題ないと思うのですが、、 セル1       関数で出力した値 A129°48′09.66"  129480966 下記のような形式の場合9の桁は1桁なので、0を追加して2桁で表示したい場合はどのような関数を使ったらいいのでしょうか? なかなかいい方法が思い浮かびません。 1桁でも2桁でもどちらでも対応できるものを考え中です。 A129°48′9.66"  12948966 ご教授お願いします。

  • 書式を保ったまま、関数式を値に変換出来ますか?

    自分で解決出来ず、お世話になります。 セル結合や、色の着いたセルのある特定フォーマットのシート(A)があります。そのシート(A)にはところどころ関数で値が入っています。フォーマットを変えずに、このセルの関数表示を値に変えた状態のシートにしたいのです。 空の特定フォーマット(B)を用意し、値貼り付けをすると、「この操作には同じサイズの結合セルが必要です」となり、張り付きません。もちろん、(A)と(B)のシートは同じ書式にしています。選択範囲も貼り付け位置も合わせています。 やはり、値貼り付けしてから、書式を整えるしか方法はないのでしょうか。いい方法がありましたら、ご教授ください。マクロでも頑張ってみます。よろしくお願いいたします。

  • エクセル セル内での文字列と別シートからの引用につ

    ひとつのセル内に文字列と他のシートの引用を下記のように入れています。 「="あいうえお"&別シート!A1&"かきくけこ"」 このとき、別シートのA1が日付(和暦)の値なのですが、引用すると数字で表示されて しまいます。 これを別シートと同様に日付(和暦)表記させるにはどうしたらよいでしょうか? 表示形式のユーザー定義でやろうとしたのですが、うまくできませんでした。 よろしくお願いします。

  • 関数の結果を""ではなく設定されていないセルにしたい

    EXCEL2000を使用してます。Sheet1シートのA列のセルには、値(文字数値)が設定してあって、B列のセルで以下のような関数を設定してあります。 たとえばB10セルの場合、 =IF(A10="","",T("2"&TEXT($B10,"0000")) A列に何も値がない場合、B列には何も表示されないのですが、Sheet1をSheet2へ「形式を選択して貼付け」→「値」をした場合、B列に""が結果として設定されたセルに何かの値が残っているようです。(A列は改行等の制御文字はありません。)CSVファイルに出力してテキストエディタで参照すると半角スペースのように見えます。貼付け時に「空白を無視する」をチェックしても何かの値がセルに残っているようです。Sheet2にコピーしたときに関数で設定されたセルを何も入力されていないセルにする方法をご教授願います。

  • EXCELでの日付表示の変更(西暦→和暦)について教えてください。

    EXCELでの日付表示の変更(西暦→和暦)について教えてください。 EXCELでデータ整理をしている中で、 西暦の日付を指す8桁の数字を和暦に表示変更しています。 普段は、 「区切り位置」にて「日付(YMD)」を指定    ↓ 「セルの書式設定」の「表示形式」にて、「日付」の「H13.3.14」を選択 という方法で表示形式を変更しているのですが、 8桁の数字の中には月末日を表す意味で 7・8桁目に「32」という数字が入っているものもあるので(下記参照)、 区切り位置指定のできないものが出てきてしまいます。 (例) 日付A     日付B 20050632   0 20060932   20060932 20071201   20081201 20080515   0 20061232   0   ↓ これを以下のようにしたい。 日付A     日付B H17.6.32   0 H18.9.32   H18.9.32 H19.12.1   H20.12.1 H20.5.15   0 H18.12.32   0 自分で思い浮かんだ方法としては、 区切り位置を指定する前に、 5・6桁目が01,03,05,07,08,10,12なら32→31に置換、02なら(以下略) というのがあるのですが、月末日かどうか分からなくなってしまうのと、 それを許容したとしても、手作業でできるデータ量ではないため、 気が遠い作業になってしまいます。。 何かもっと他に良い方法はありませんでしょうか? なお、MS EXCEL2003を使用していますが、 別PCでEXCEL2007も使っているので、どちらの方法でも構いません。 また和暦の表示形式は、和暦と分かるものであれば表示形式は問いません。 以上、よろしくお願い致します。

  • エクセルVBA セルの書式につい

    ユーザーフォームのテキストボックスに入力した日付(yyyy/mm/ddの形式)をA1セルに入れるとします。  Range("A1").Value = Me.txt日付 A1セルの表示形式は書式設定でユーザー定義の"d"で表示されるように設定していますが、 テキストボックスに入力した形式のまま(yyyy/mm/dd)でA1セルに表示されてしまいます。 上記のみではNGでしょうか? ちなみに、yyyy/mm/ddと入力されたA1セルを一旦編集モード([F2]キーを押した状態)にして[Enter]を押すと"d"(書式設定で指定している書式)に変わります。 参考:A1セルの日付をみて別シートの一覧からVlookup関数で値を検索したいところが、yyyy/mm/ddで表示されるためにエラーとなってしまいます) ご存知の方教えていただきたいです。

  • エクセルで文字列を日付に変更したいのですが

    テキストデータをエクセルに変換したのですが、日付が6桁の和暦の文字列のため書式表示で変更しても正しい日付に変わりません。どうすればいいのかわからないので、どなたかお詳しい方教えていただけませんでしょうか。 例えば 180508 150530 080712 といった数字を H18.05.08 もしくは 2006/05/08 H15.05.30 もしくは 2003/05/30 H08.07.12 もしくは 1996/07/12 に、変更できないものでしょうか。

  • エクセルの日付表示について

    エクセルの日付を1桁ずつ別のセルに表示したいのですが、 何か方法があるでしょうか? たとえばH20.7.25の場合、 1つのセルに1桁ずつ シートに↓のように表示したいのですが。  |  A  |  B  |  C  |  D  |  E  |  F  | 1|H20.7.25| 2|  2  |  0  |  0  |  7  |  2  |   5  | A1の日付を2列目に1桁ずつ表示。 (わかりづらいかもしれませんが・・) よろしくお願いします。

  • EXCELでの日付表示の方法

    初心者ですみません。 EXCELで日付を表示する方法の質問です。 例えば、同一ブックの別のシートのあるセル(例えばB2)に6桁の日付の数字(例211229  和暦)が入力されているとして、その数値の下4桁のみを別のシートの例えばC2セルで12月29日と表示させるにはどうしたらよいのでしょうか? MODで6桁の数字を10000で割れば、余りとして1229が得られますが・・・。 よろしくお願いいたします。

専門家に質問してみよう