• 締切済み

このようなユーザー定義の文字列の設定

たとえば「20210411」と入力(またはコピペ)すると、「2021年04月11日」と表示してくれるような、書式におけるユーザー定義の文字列について教えてください。 もうひとつなのですが、同様に、 たとえば「-100」という文字列を入力(またはコピペ)すると、マイナスの部分がとれて「100」表示してくれるような、書式におけるユーザー定義の文字列について教えてください。 Excel2019利用です。

みんなの回答

  • asciiz
  • ベストアンサー率70% (6809/9681)
回答No.4

>つまりマイナスがあるときに限り、ユーザー定義で「#,##0"円"」と >設定しても、手動で冒頭に「'」をつけるしかないということでよいですか? 質問内容がズレているのですが。 マイナス円の時に、マイナス記号及び「円」文字は表示しないのではなかったのですか? そのための書式設定です。 そして、その様な書式設定をした場合、セルに入力するのは数字部分のみです。 「100」や「-100」のように入力し、「円」は入れません。 その数値が、書式設定により「100円」や「(赤文字)100」と表示されるのです。

frau
質問者

お礼

質問がズレているのではなく、確認するためでした。 ありがとうございました。

  • asciiz
  • ベストアンサー率70% (6809/9681)
回答No.3

>逆に「-100円」をそのまま入力またはコピペしたいユーザー定義を教えてください。 「-100円」を入力できないのは、書式設定のせいではありません。 Excelの動作上の都合です。(値ではなく式の入力と解釈してしまう) 従って、書式設定による解決はできません。 なお、メモ帳などから「-100円」をコピーし、貼りつけることは可能です。 この場合は文字列として貼りつくので、「-100円」がそのまま表示されます。(そして数値計算などには使えません)

frau
質問者

補足

設定を「文字列」にすればよいのはわかりますが、「円」や1,000円というようにカンマを自動で表示させることとは併用できないですよね? つまりマイナスがあるときに限り、ユーザー定義で「#,##0"円"」と設定しても、手動で冒頭に「'」をつけるしかないということでよいですか?

  • asciiz
  • ベストアンサー率70% (6809/9681)
回答No.2

>たとえば「-100」が「100」になると「100円」というようにしたいのです。 はい、正の値に適用される書式を変更すれば良いので、 「0"円";0」 とすればOKです。 でもお金の表示であるなら、3桁カンマが付いていた方が見やすいですね。 その場合、 「#,##0"円";#,##0」 と設定すると、3桁ごとの区切りカンマ(必要なとき)が表示されます。 ついでに、マイナス値だけを赤い文字にするなら 「#,##0"円";[赤]#,##0」 なんて指定もできます。 どのような書式文字列で設定されているか、Excelが用意している書式を一度選択してからさらに「ユーザー定義」を選択すると、確認できます。 さらに詳しく知るには、以下のマニュアルを参照してください。 >Excel のセルの表示形式で [ユーザー定義] に使用できる書式記号について >https://support.microsoft.com/ja-jp/topic/excel-%E3%81%AE%E3%82%BB%E3%83%AB%E3%81%AE%E8%A1%A8%E7%A4%BA%E5%BD%A2%E5%BC%8F%E3%81%A7-%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E5%AE%9A%E7%BE%A9-%E3%81%AB%E4%BD%BF%E7%94%A8%E3%81%A7%E3%81%8D%E3%82%8B%E6%9B%B8%E5%BC%8F%E8%A8%98%E5%8F%B7%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6-979767bb-6635-c0f5-5e7f-32c69715ccfa

frau
質問者

補足

カンマ付きまでお気を使っていただき、ありがとうございます。無事にできました。 あとひとつなのですが、逆に「-100円」をそのまま入力またはコピペしたいユーザー定義を教えてくだ さい。 「-100」セルに入れるとき「’」をつけなくては整数のままになってしまうので。よろしくお願いいたします。

  • asciiz
  • ベストアンサー率70% (6809/9681)
回答No.1

>「20210411」と入力(またはコピペ)すると、「2021年04月11日」と表示 ちょっとこれは書式設定では難しい気がします。 B1セルに 「=Date(A1/10000, mod(A1,10000)/100, mod(A1,100))」と言った計算式を入れると、A1セルの8桁数値を日付に出来ます。 あ、日付値になった後の日本式表示は、書式設定で好きな日付表示形式を選んでください。(標準/G は 2022/4/15 のようになるので) >「-100」という文字列を入力(またはコピペ)すると、マイナスの部分がとれて「100」表示 こちらは書式設定のユーザー定義で「0;0」と入れれば良いです。 セミコロンで区切られた1番目が正の値の時に適用される書式、2番目が負の値に適用される書式となるので、正負どちらでも符号無し表示、となります。 ただしセルに入っている値そのものには符号が付いています。 本当に正の値にしたいならば、B2セルに「=ABS(A2)」のようにすると、A2の値を正の値に変換できます。

frau
質問者

補足

ご回答ありがとうございます。 いちばんめはちょっと難しいですので断念します。 二番目についてなのですが、これに自動で「円」をつけることはできますか?たとえば「-100」が「100」になると「100円」というようにしたいのです。

関連するQ&A