Excelのセルの表示形式(ユーザ定義)について

このQ&Aのポイント
  • Excelのセルの表示形式(ユーザ定義)について調査した結果、指定した文字列の前後にハイフンを追加する方法は見つかりませんでした。代替案として、left関数やright関数を使用する方法や置換を行う方法がありますが、望ましくないとのことです。VBAやマクロの使用も望ましくないが、このような場合には代替案を試すことをおすすめします。
  • Excelのセルの表示形式(ユーザ定義)について調査した結果、指定した文字列の前後にハイフンを追加する方法は見つかりませんでした。望ましくない代替案として、left関数やright関数を使用する方法や置換を行う方法がありますが、これらの方法には欠点があります。ただし、VBAやマクロの使用は望ましくないとのことです。
  • Excelのセルの表示形式(ユーザ定義)について調査した結果、指定した文字列の前後にハイフンを追加する方法は見つかりませんでした。代替案として、left関数やright関数を使用する方法や置換を行う方法がありますが、これらの方法は望ましくないとのことです。VBAやマクロの使用も望ましくないとのことなので、ほかの方法を試してみることをおすすめします。
回答を見る
  • ベストアンサー

Excelのセルの表示形式(ユーザ定義)について

Excelについての質問となります。 現在セルには下記の様な値が入っています。 b21a c32b a01a これを b-21a c-32b a-01a といった風に表示したいです。 私の調べ方が悪いのかもしれませんが、表示形式で一文字を指定する方法が見当たりませんでした。 やり方を知っている方、是非ご教示下さい。 ※以下のやり方は望ましくありません。 ・left,right関数を使う方法 ・置換 ・VBA、マクロの使用 ただし、上記で出来る物がある場合、紹介して頂けると助かります。(代替案くらいで考えてます) すみませんが、よろしくお願い致します。

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

  • ベストアンサー
  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

文字列の前後に何か文字を追加することは出来ますが、文字列の間に何かを入れるということは表示形式では出来ません。 A1のセルにデータがあるとして、 隣のセルに =LEFT(A1,1)&"-"&RIGHT(A1,LEN(A1)-1) と入力、下へコピー。 範囲選択された状態のままコピー→A1で形式を選択して貼り付け→値でOK 隣の列をDelete

関連するQ&A

  • EXCELの「書式」ユーザー定義で「1」を「00001」に表示することに成功しましたが、実際の値は依然「1」となります。

    EXCELの「書式」→「セル」「表示形式」「ユーザー定義」で00000を選択しA1セルの値「1」を「00001」に表示することに成功しましたが、実際にカーソルをA1セルに持って行くと、値は依然「1」となります。------実際にカーソルをA1セルへ持って行っても「00001」の値になる方法を教えてください。 最終的にはA1セル「00001」B1セルに「B]C1セルに&関数を使って C1セルには00001Bと表示させたいのです。

  • エクセルのセルの表示形式について教えてください。

    1つのセルをわけたいんです。↓ 4ケタの数字と3桁の数字が混在しているセルです。 「102」を表示形式で4ケタ(=0102)に変更して それを「01」と「02」に分けたいんです。 (「01」の上2桁がほしい) 区切り位置をしても、もとの表示形式(102)になってしまい 上二桁を拾えません。 LEFT関数を使用してももとの表示形式(102)になってしまい 上二桁として10になってしいます。 上二桁01がほしいんです。 もとの表示形式にならない方法はありますか? ネットでもどう調べてよいかわからず質問しました。 お分かりになる方、お力を貸してください。 宜しくお願いいたします。

  • Excelでセルからの表示形式を取得

    Excelでセルからの表示形式を取得 関数またはVBAで、セルから表示形式を取得するにはどのようにすればいいでしょうか? (標準・文字列など)

  • エクセル2013での表示形式について

    いつもお世話になっております。 エクセル2013での表示形式で困っています。 いずれも万単位で A1セル → 123,456 B1セル → 1,234,567 使用関数 → =TEXT(【A1 or B1】,"#億#,##0万円") A1セルの結果 → 12億3,456万円 B1セルの結果 → 1,23億4,567万円 となります。 A1セルは正しく表示されますが、B1セルは桁区切りが前に一つ多く入ってしまいます。 B1セルの結果を、123億4,567万円と表示させる方法をお教え願います。 どうかよろしくお願いします。

  • IF関数と表示形式を他のセルから設定

    こんにちは。交通費明細をExcelで作成しており、 関数や書式で行き詰ったのでご教授下さい。 A1はドロップダウンで【空白、→、⇔】を選択できるようになっています。 すぐ下のセルA2には金額を入れるようになっています。 やりたい事は、A1で⇔を選んだ時のみ、A2に入っている金額に"x2"という表示をつけたいのです。 A1もA2もマクロを組んだクリアボタンを押すとDeleteされるようになっています。 ので、A1やA2自体にIF関数を入れられません。(消えちゃうので) A2のセルの書式設定の表示形式をいじろうとしても、条件は入れられず…? A3にIF関数を入れてA1が⇔だったらA2を変更…としようとしたのですが、自分のセルを変更させるのは分かりますがA2を変更、というのがどう書いたら良いのか、はたまた他のセルを変化させられるのか、よく分かりません; VBAを使えば出来ますが、VBAを使わずに実現できる方法がありましたら ご教授お願いします。

  • 書式ごとコピーするユーザー定義関数をつくりたい

    VBA初心者です。 ExcelにてVBAを使用し、書式ごとコピーができるユーザー定義関数の作成を考えております。 理想としては例えば、A1に =GetTxt(INDIRECT("G"&B1)) と入力すれば、B1の値に応じてG列の任意の行のセルを引数として指定でき、 指定先のセルを書式ごとA1にコピーできるGetTxt()関数を定義したいのですが、 具体的にどのようにFunctionプロージャを記述すればいいでしょうか? (コピー元のセルをB1に入力する値に応じて随時自動で変えたいと考えております) 単純に値を返すだけのVBAコードならわかるのですが、 ワークシート上で関数として使用でき、かつ書式なども指定する方法がわかりません。 もしワークシート上での関数としての実行が困難であれば代替案でも構いませんので、 宜しければ何卒ご教示お願い申し上げます。

  • エクセル:表示が途切れないようにしたい

    例えば、A1のセルに「abcdefghijklmnopqrstuvwxyz」と入力します。 B1のセルは、IF文を「=if(A2=1,"ok","")」と入れます。 A2セルが「1」のときはB1に「ok」が表示され、A1の表示は途中で途切れますよね。(「abcdefg」くらいまでしか表示されない) 1以外の数字を入れたときは、A1の表示が途中で途切れないようにしたいのに、B1が空白表示なのに途切れてしまいます。判断式がfalseのときに途切れないよい方法はないでしょうか。 1.マクロは使いたくありません。 2.1つの方法として、False時の""の代わりに"aaaa"と入力し、   A1とB1を別のセルに「形式を選択してコピー」で「値」だけコピーし、そのコピー先のセルを"aaaa"⇒ブランクに「置換」すればできます。ただ、この方法は煩雑なので、もっとよい方法はないでしょうか。

  • Excelでセルに入っている数字を時刻(0:00:00)として表示する方法(※セルの表示形式の変更ではありません。)

       A   B   1  24  0:00:24 2  76  0:01:16 セルA1に「24」という数字が入っています。 セルA1の数字を秒として、セルB1に「0:00:24」と表示させたいです。 セルA2、B2のようにもできれば理想です。 単純に関数を使って「="0:00:""A1"」とB2に入力しても、正しく表示はできませんでした。 「="0:00:"A1」も同様に、関数ではないのでエラーです。 方法ご教授お願いいたします。

  • 123,156,789.012345を3けたずつにわけて、違うセルに飛ばす関数を教えてください。

    A1のセルに123,456,789.012345という数字があります。 これをB1のセルに123、C1には456。D1には789、E1には少数点以下の012。さらにF1には345を表示する関数を教えてください。 6桁までならRIGHT・LEFTの関数でなんとかなったんですが、手に負えなくなってしまいました。(笑 関数がまだよく分かりません。説明がまずいかもしれませんが宜しくお願いします。

  • Excelで2つのセルの時刻を1つのセルに表示するには?

    9:00 18:00 がそれぞれのセルに入っています。 それをひとつのセルに 9:00-18:00 と表示させるにはどのような関数を入れればいいですか? A1セルに 9:00 B1セルに 18:00 が入っておりC1セルに結果を表示させると仮定します。

専門家に質問してみよう