• ベストアンサー

エクセル/セルの書式について

エクセルでシートをまたがって表示させる場合の質問です。 以下のようにしましたが上手く表示されません。 シート1のA1には毎回違った電話番号を入れられるようにしておく。 シート2のB5にはシート1に入れた文字を反映させたいが、反映された文字の頭に「Tel:」を付け加えたいので、B5の書式設定で表示形式のユーザー定義に「"Tel:"@」を設定。 B5に「=シート1!A1」と式を入れました。 でもB5には「Tel:03-●●●●-●●●●」とは表示されずに「Tel:=シート1!A1」と表示されてしまい困っています。 以前は出来なたのですが、何が原因でしょうか?

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

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

piyochunさん、面白い現象を発見されましたね。 当該現象は同一シート内でも発生しますね。私が試行錯誤した結果をお知らせしておきます。 【実験結果】 1.標準書式のセル A1 に 03-1234-5678 を入力しておく。  1.1. 標準書式のセル B5 に式 =A1 を入力する。  1.2. 当然のことながら、03-1234-5678 が表示される。  1.3. セル B5 を "Tel:"@ の“ユーザー定義”で文字列書式設定  1.4. Tel:03-1234-5678 と表示された時点で、当該セルで[コピー]     →[値の貼り付け]を実行すれば問題なし。しかし…  1.5. Tel:03-1234-5678 と表示された時点で、F2キーを一発叩いた     後、Enterキーを打ち付けると今まで表示されていた     「Tel:03-1234-5678」が「Tel:=A1」に変貌! 2.“文字列”に書式設定したセルに 03-1234-5678 を入力しておく。  2.1. ステップ1.1.に同じ。  2.2. ステップ1.2.に同じ。  2.3. ステップ1.5.に同じ。ただし、「Tel:=A1」を「=A1」と読み替     え。 【考察】 ステップ2.3.で「=A1」が表示されるのは、ステップ2.2.でセル B5 の書式設置が“文字列”に変貌していたからで、変貌した理由は参照先のセル A1 の書式に拉致されたから。同様に… ステップ1.5.で「Tel:=A1」に変貌させられたのは、ステップ1.3.で“ユーザー定義”であれ、文字列書式設定をしたからではないかと。 何れにしても奇異な現象ではあります。

その他の回答 (3)

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.4

試してみました。Excel2000です。特に特別な設定はしていないつもりです。     A         C          C列の書式   1 03-1234-5678   TEL:03-1234-5678  "TEL:"@ C1の式 =A1  セルの表示形式は "TEL:"@ このように設定し、再編集すると     A         C          C列の書式 1 03-1234-5678   TEL:=A1       "TEL:"@ のようになってしまいました。質問はこの事象でしょうか。  (再編集:C1を選択し、F2キーを押して、Enterです) 一旦、TEL:=A1のようになると、書式をクリアし、再編集しないと設定をしなおしできないようです。 セルの内容が式の時に起きるようで、仕様なのか別の原因かは不明です。 別のシート云々は特に関係ないと思います。 回避方法としては、  書式設定を ;;;"TEL:"G/標準  とするか、  参照式を  ="TEL:"&A1     のようにすることで対応できると思います。

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

セルの「値」とセルの「表示形式」を分けて理解することが必要と思います。 A1が「Tel:03-1234-3456」と表示されているのは、表示形式の働きで、あくまで値は「03-1234-3456」です。 一方=A1のような使い方は、関数などと同じく「値」だけをとってくるものです。 前にTel:が着いていたのは、値とともに表示形式までコピー(コピーは、表示形式まで持ってくる)されたからと思います。 私がやってみると、同じシートの場合表示形式までコピーしてくるようです。他シート=Sheet1!A1 では値だけとってきました。 基本はこちらのはずですが、同一シートの場合は、表示形式までとってくるエクセルのルールなのか、例えばツールーオプションなどの設定があるのかわかりません。

piyochun
質問者

補足

ありがとうございます。 いえ、A1にはTel:の表示はさせておりません。 B5の方の書式設定でそのように表示するように設定しました。が、Tel:までは良いのですが、電話番号(例として)がその後に表示されず式が表示されて困っています。 ただ確かに、書式と値はわけたほうがよいのかも。。。 以前人に頂いたシートはちゃんと表示されているのですが、どのように設定されているのかわかりませんし、製作者不明なのです。。。

回答No.1

「=シート1!A1」ではなく「=Sheet1!A1」で解決しませんか?

piyochun
質問者

お礼

ご回答ありがとうございます。 いえ、シート1、シート2としたのはあくまで「例」です。 実際はおっしゃるとおりSheetが一般的でしょうが、当方は大事なBookのシート命は分かりやすく必ず、例えば「見積り」とか「売上表」とか変えて使用しています。

関連するQ&A

  • エクセルのセル書式設定について

    エクセルのセル書式設定について教えてください。 セルA1に文字列「052」と入力すると、B2に「0 5 2」と表示されるようにするには、 書式設定をどう設定したら良いですか? ちなみに、A1を文字列ではなく数値で設定し、B2をユーザー定義「# # # #」で登録すると、 A1は「52」、B2は「5 2」と表示されてしまいます。 A1を「052」と表示させる為には、文字列として設定しなくてはいけないが、 そうするとB2の値も「052」と表示されてしまいます。 どなたか良い方法を教えてください。

  • Excelでのセルの書式設定で、ユーザー定義が反映されない。

    Excelでのセルの書式設定で、ユーザー定義が反映されない。 別シートから参照した数値(@)が入力されると「○○○@○」と表示させたいのですが・・・ たとえばですが、 Sheet1のA1セルに「=IF(Sheet2!A1="","",Sheet2!A1)」という数式を入れてあります。 Sheet1のA1セルの「セルの書式設定」を「ユーザー定義」にして、「"花""子""は"@"歳"」にしてあります。 これでSheet2のA1セルに「3」と入力します。 Sheet1のA1セルに「花子は3歳」と表示されると思っていたのですが、「3」しか表示されません。 何が間違っているのかわかりません。 お知恵を拝借させてください。m(__)m

  • エクセルのセルの書式設定について

    お世話になります。 エクセルのセルの書式設定について質問させて頂きます。 sheet1のA1に本日の日付を入れてセルの書式設定のユーザー定義にて"C"yyyymm"-"を設定することで、「C201512-」となりますが、sheet2のA1に「=sheet1!A1」とし、同じ定義で同じ結果「C201512-」を表示させたいのですが、どのような方法がありますか? 尚、状況によって「C201512-」のCについてはsheet1のA1のユーザー定義において「"C"yyyymm"-"」⇒「"D"yyyymm"-"」に変える場合があります。その場合でも、ユーザー定義をsheet2のA1に同じ結果を表示させたいと考えています。 宜しくお願い致します。 もし、もっと効率の良い方法がありましたら、ご教授頂けると光栄です。 尚、使用環境は OS:windows8.1 EXCEL:EXCEL2013 です。

  • エクセル 書式設定

    〒: 111-1111 上記のセルをコピーして、別のシートに貼り付けしただけで 111-1111 になる様にしたいです。範囲指定してコピぺするのが前提なのですが、不要な表示なくコピペする方法(貼り付けオプション)やユーザー定義の書式設定で出来ますか。郵便番号の他にも氏名とかTELとか、コロンの前の消したい文字はいくつかあります。良い方法あれば教えて頂くと助かります。よろしくお願いします。

  • エクセル,セルの書式設定

    エクセルのセルの書式設定→表示形式→ユーザー定義で、電話番号入力の際、数字を入れると勝手に間にハイフンが入ってくれるようにしたいのですが、090-****-****、045-****-****、03-****-**** などすべて番号に対応するようにするにはどうしたら良いでしょうか?

  • Excelの書式設定の追加が出来ません

    Excelでセルの表示形式の書式設定をユーザー定義で設定追加しようとすると、ユーザー定義の追加は出来ませんとエラーがでます。 シートに保護もかかっていません。 どうしたら書式の設定が追加できるでしょうか?

  • エクセル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で表示されるためにエラーとなってしまいます) ご存知の方教えていただきたいです。

  • エクセルのセル書式設定について

    エクセルのセル書式設定について教えてください。 セルA1に 111222333 と数字を入力しました。 ちょっと見にくいので111-222-333とするために書式設定のユーザー定義で ###-###-### としました。うまくいきましたが、  A1122233B だと - がはいりません。 セルA列には英数字が入ります。見やすくするため表示のみ「-」を 表示させたいです。入力はそのまま「-」なしで入力します。 どうかお願いします。

  • Excelのセルの書式設定-表示形式

     例えばセルに「田中」と言う文字を打ったら自動的に表示が「田中様」とするには、セルの書式設定-表示形式-ユーザー定義のところにどのように入力すればいいのでしょうか?教えてください。

  • Excel セルの書式設定

    Excel2002を使っています。 セルB1に、数式 =A1 を設定しています。 さらに、セルB1には、セルの書式設定で、ユーザー定義 "*** " @ " ***" を設定しています。 セルB2は、数式 =A2 セルB3は、数式 =A3 ・ ・ ・ (上記のユーザー定義は B列に設定されています。) セルA1に『チョコレート』と入力したら、 セルB1には、『*** チョコレート ***』と表示されます。 もし、セルA1が空白の場合『*** ***』が表示されます。 でも、セルA1が空白なら、セルB1も空白にしたいのですが、その方法はありますでしょうか? よろしくお願いします。

専門家に質問してみよう